1

我正在尝试使用 GL_QUADS 渲染一个正方形,但每次渲染它都有一个三角形缺失形式在此处输入图像描述

这是我的代码:

gl.glPushMatrix();
gl.glBegin(GL.GL_QUADS);
gl.glVertex3d(pts2d.get(0).x, extra[0],pts2d.get(0).y);
gl.glVertex3d(pts2d.get(1).x,extra[0],pts2d.get(1).y);
gl.glVertex3d(pts2d.get(0).x, portalHeight,pts2d.get(0).y);
gl.glVertex3d(pts2d.get(1).x,portalHeight,pts2d.get(1).y);
gl.glEnd();
gl.glPopMatrix();

我正在使用 JOGL,这些点是创建正方形的正确点,我只是不知道为什么会切掉一个三角形。

4

1 回答 1

2

请注意,OpenGL 的四边形排序与等效三角形条的排序不同。这就是我的意思。

按以下顺序指定构成四边形三角形条的四个顶点:

0 2
1 3

四边形按以下顺序指定:

0 3
1 2

看到不同?它在四边形的面上逆时针(或顺时针,取决于您的缠绕顺序)。它不是从上到下,从左到右。

于 2012-10-14T04:41:41.693 回答