我不明白为什么会这样:
glPushMatrix();
GL11.glBindTexture(this.target, this.textureID);
glColor3f(1, 1, 1);
glTranslated(posX, posY, 0);
glBegin(GL_QUADS);
{
glTexCoord2d(posXLeft, posYTop);
glVertex2d(0, 0);
glTexCoord2d(posXLeft, posYBottom);
glVertex2d(0, verH);
glTexCoord2d(posXRight, posYBottom);
glVertex2d(verW, verH);
glTexCoord2d(posXRight, posYTop);
glVertex2d(verW, 0);
}
glEnd();
glPopMatrix();
工作完美,其中 posX 和 posY 显然是以像素为单位的位置,posXLeft 等是要显示的纹理的比率。
但是这个:
glPushMatrix();
GL11.glBindTexture(this.target, this.textureID);
glColor3f(1, 1, 1);
glTranslated(posX, posY, 0);
glBegin(GL_LINES);
{
glVertex2d(10, 10);
glVertex2d(800, 600);
}
glEnd();
glPopMatrix();
不是。绘制线条而不是一块纹理应该更容易。
我想要达到的是在纹理上添加一些之字形线来模拟损坏或破裂时的裂缝,但我什至无法画出一条线,所以我被困在这里。
有什么建议吗?