ポリゴン面の表と裏
ポリゴンには表面(前方面)と裏面(後方面)があるそうです.
パフォーマンスのために、表面もしくは裏面のみ表示するように設定するようにします。
大抵の場合は、表面のみを表示するように設定するので、初期設定に一度行えば良さそうです.
パフォーマンスのために、表面もしくは裏面のみ表示するように設定するようにします。
大抵の場合は、表面のみを表示するように設定するので、初期設定に一度行えば良さそうです.
前方面:画面上で頂点が反時計回りの順序になっているポリゴン。
後方面:時計回り
後方面:時計回り
- void glFrontFace(GLenum mode)
- modeがGL_CWの時、右回りの面が前方面であると判断する。初期設定では、modeはGL_CCW
- glEnable(GL_CULL_FACE)
- 片面表示(glCullFace)を有効にします。
- void glCullFace(GLenum mode)
- スクリーン座標変換前に、破棄するポリゴンを指定。
- GL_FRONT:前方面を破棄します
- GL_BLACK:後方面を破棄します
- GL_FRONT_AND_BACK:前方面と後方面を破棄します
表面のみを表示する
頂点を設定する前に、
glEnable(GL_CULL_FACE) glCullFace(GL_BACK)
裏面のみを表示する
頂点を設定する前に、
glEnable(GL_CULL_FACE) glCullFace(GL_FRONT)
参考
- http://www.komoto.org/opengl/sample10.html
- http://homepage3.nifty.com/li-chu/OpenGL/OpenGL06.html