ワイヤーフレームの描画



普通に面のあるポリゴンを描画していたところを
ワイヤーフレームのみの描画に変更する場合は、
いちいち、
頂点どうしを線で結んでワイヤーフレームを描くような
コードを書く必要はないのです。
glPolygonMode(...)

なんて関数があるのですが、

glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );

と設定してやれば、ポリゴンの描画がワイヤーフレームのみになります。

第1引数には他に GL_FRONT , GL_BACK を指定できます。

第2引数として、GL_LINE の代わりに GL_POINT で頂点、
GL_FILL で普通に面を描画。

つまり、ワイヤーフレームを描きたい場合、
glPolygonMode で設定さえしてやれば、
わざわざコードを別に書く必要はないというわけです。


 
実際にどうなるかというと・・・

glPolygonMode( GL_FRONT_AND_BACK, GL_FILL);    //普通に描画する
で、下のようなものが描画されているとして、
ふつうに描いた、どせいさん

glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );    //ワイヤーフレーム
と、指定してから、全く同じように描画を行うと、次のようになる。
ワイヤーフレームな、どせいさん


ちなみに、
線や点だけになっても、
ちゃんとライティングやテクスチャマッピングなどが適用されます。



<back to OpenGL menu>