给定深度的OpenGL绘制矩形

时间:2015-08-08 08:42:30

标签: java opengl lwjgl depth-testing

目前,我启用了GL_DEPTH_TEST并将其用于纹理。但是,我想绘制一个具有一定深度/ z值的无纹理矩形。

glDisable(GL_TEXTURE_2D);
glColor3f(colour.x, colour.y, colour.z);
glRects((short) rect.x, (short) rect.y, (short) rect.z, (short) rect.w);
glEnable(GL_TEXTURE_2D);

上面的代码绘制了正方形。如何为方块设置Z或深度值,以便深度测试与之一起使用?

1 个答案:

答案 0 :(得分:0)

glRect系列函数总是以z隐含地绘制为0.所以你有两个选择:

  1. 设置相同的转换,将z=0平面放在您喜欢的位置。
  2. 根本不使用glRect,只需在您喜欢的z坐标处使用4个顶点绘制一个矩形。
  3. 您应该知道,您粘贴的代码中的每个行都依赖于已弃用的 OpenGL功能,glRect本身即使对于已弃用也是一个相当模糊的功能代码。

相关问题