OpenGL зеркало преобразование задняя сторона отбрасывания

StackOverflow https://stackoverflow.com/questions/4020118

  •  26-09-2019
  •  | 
  •  

Вопрос

В OpenGL у меня есть объект, который я масштабирую на -1 вдоль оси ... это приводит к тому, что объект не отображается должным образом, потому что все передние лица теперь являются обратными лицами. Короткое отключение отключения отборки, как бы я получил этот объект для рендеринга правильно? Есть ли способ сделать это, не модифицируя текстурированные нормальные вершины, которые составляют мою модель?

Это было полезно?

Решение

Вы можете просто переключить режим Canding. Вы можете использовать glCullFace(mode) решить, какие треугольники должны быть отброшены. Поставка параметра GL_BACK означает, что отображаются только полигоны перед передним лицом, в то время как параметр GL_FRONT означает, что отображаются только полигоны для обратного плана. Таким образом, если ваша преобразование означает, что многоугольники «Ожоги» на самом деле находятся на самом деле, вызывая glCullFace(GL_FRONT) должен сделать трюк.

В качестве альтернативы вы также можете контролировать, какие полигоны считаются передним / обратным планом, используя glFrontFace(dir), с параметром GL_CW (по часовой стрелке) или GL_CCW (против часовой стрелки) (по умолчанию против часовой стрелки, поэтому, если вы устанавливаете его на Clocksie Originaly Projectacing Poliding Polygons, будет считаться фронтальным фактором).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top