c – 为openGL提供3D坐标的顺序是什么?

我希望有人可以为我解释这个问题.如果我得到一个点(i,j,k),我可以制作以下立方体:

8______K_______7     1 =  i,k
     /|           /|      2 = i+1,k
   L/ |         J/ |      3 = i+1,j+1,k
   /  |H        /  |      4 =  i,k
 5/______I_____/6  |G     5 =  i,k+1
  |   |        |   |      6 = i+1,k+1
  |   |        |   |      7 = i+1,k+1
 E|  4|________|F__|3     8 =  i,k+1
  |  /     c   |  /
  | /D         | /B       
  |/___________|/            
  1      A     2

其中数字1-8是立方体的每个顶点,字母A-L是立方体每个边缘的中点.

我正在尝试实现一个行进立方体算法,但我不知道为我找到的每个三角形平面给出点的顺序.例如,如果标记了顶点1,那么我需要从E-D-A绘制一个平面.类似地,如果标记了顶点7,我将需要从K-J-G绘制一个平面.订单是否有规则为openGL提供3D空间坐标?

解决方法

Is there a rule for the order to give coordinates in 3D space for openGL?

OpenGL通过屏幕空间中顶点的缠绕来定义面的正面和背面.如果屏幕空间中的面的顶点是逆时针顺序,则认为正面是可见的.顺时针顺序=>背面.法线应指向正面方向.

相关文章

一.C语言中的static关键字 在C语言中,static可以用来修饰局...
浅谈C/C++中的指针和数组(二) 前面已经讨论了指针...
浅谈C/C++中的指针和数组(一)指针是C/C++...
从两个例子分析C语言的声明 在读《C专家编程》一书的第三章时...
C语言文件操作解析(一)在讨论C语言文件操作之前,先了解一下...
C语言文件操作解析(三) 在前面已经讨论了文件打开操作,下面...