[英]how to bind part of the texture opengl
我希望將紋理綁定到多維數據集(使用GlutSolidCube而不是glvertex創建多維數據集),但是整個紋理都綁定了。 在圖像文件中,我將所有紋理都在一起(出於速度和老師的要求),我只希望綁定部分紋理。 我怎樣才能做到這一點????
紋理是紋理綁定的單位。 如果要“剪切”紋理的一部分,可以通過調整使用的紋理坐標來實現。
而不是使用整個范圍0..1,而是使用較小的值來匹配子紋理在紋理內的位置。
您要執行的操作是不可能的,因為glutSolidCube
不會生成紋理坐標 。
但是,您還將注意到,對該問題的回答表明您可以使用以下方法讓OpenGL在調用glutSolidCube
為您生成紋理坐標:
glEnable(GL_TEXTURE_GEN_S);
glEnable(GL_TEXTURE_GEN_T);
有關使用OpenGL自動紋理坐標生成的更多信息,請參見此處 。 但是,我想指出的是,這似乎是在不推薦使用即時模式OpenGL的時代產生的。 此外,不再維護GLUT,而是保留freeglut 。
總而言之,最好根據glVertex
建議使用glVertex
調用並指定自己的特定紋理坐標。 您可以嘗試OpenGL的紋理坐標生成,但是它可能太嚴格而無法滿足您的需求。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.