Какой порядок дать 3D-координаты для openGL? - PullRequest
4 голосов
/ 02 ноября 2011

Я надеюсь, что кто-то может пролить свет на этот вопрос для меня.Если мне дается точка (i, j, k), я могу сделать следующий куб:

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

, где числа 1-8 - каждая из вершин куба, а буквы AL - серединыкаждый край куба.

Я пытаюсь реализовать алгоритм движущегося куба, но я не знаю, в каком порядке выставлять точки для каждой треугольной плоскости, которую я нахожу.Например, если отмечена вершина 1, мне нужно будет нарисовать плоскость из EDA.Точно так же, если отмечена вершина 7, мне нужно будет нарисовать плоскость из KJG.Есть ли правило для заказа давать координаты в трехмерном пространстве для openGL?

1 Ответ

1 голос
/ 02 ноября 2011

Существует ли правило для заказа давать координаты в трехмерном пространстве для openGL?

OpenGL определяет лицевую и обратную сторону грани путем наматывания вершин в пространстве экрана.Если вершины грани в пространстве экрана расположены в порядке против часовой стрелки, передняя грань считается видимой.Порядок по часовой стрелке => задняя сторона.Нормалы должны указывать в направлении передней грани.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...