我不知道什麼是錯的。一切似乎都很好。這裏的代碼(紋理加載,只是圖):OpenGL - quad上的紋理座標
glBegin(GL_QUADS);
float TX1,TX2,TY1,TY2;
TX1=some_numbers_check_below_code;
TX2=some_numbers_check_below_code;
TY1=some_numbers_check_below_code;
TY2=some_numbers_check_below_code;
glTexCoord2f(TX1,TY2);
glVertex3f(float(RectOutput.x), float(RectOutput.y), 0.0f);
glTexCoord2f(TX2,TY2);
glVertex3f(float(RectOutput.x+InputWidth), float(RectOutput.y), 0.0f);
glTexCoord2i(TX2,TY1);
glVertex3f(float(RectOutput.x+InputWidth), float(RectOutput.y+InputHeight), 0.0f);(InputY)/float(Input.H)));
glTexCoord2f(TX1,TY1);
glVertex3f(float(RectOutput.x), float(RectOutput.y+InputHeight), 0.0f);
glEnd();
沒事用:
TX1=0.0;
TX2=1.0;
TY1=1.0;
TY2=0.0;
(良好:http://i.imgur.com/xLeBm.png)
,但會隨(例如)破:
TX1=0.0;
TX2=0.5;
TY1=1.0;
TY2=0.5;
(喜歡這個:http://i.imgur.com/UykBh.png)
真的,它讓我很煩惱。可能問題不在於此代碼中。一切都應該沒問題......但事實並非如此。
任何想法?
我不知道很多關於你正在做的,我不是專家基於OpenGL,但似乎你錯過了將紋理座標發送到平面的其中一個三角形。 –