1

glClipPlane クリッピング プレーンの表面にプレーンをレンダリングするにはどうすればよいですか? 平面は、平面上にある一連の点の間に多角形を描画することによってレンダリングされます。現在、とても楽しいステッチを作成しています。

glPolygonOffset はここでは役に立たないと思いますか?

平面を平面の片側に少しだけ移動することは可能ですが、もしあれば、よりシンプルでエレガントな解決策を好むでしょう。

4

1 に答える 1

1

GLSLを使用していないと思いますか?GLSL 1.30 を使用している場合gl_ClipDistance [N]、クリップ プレーン N に対して頂点を >= 0.0 に設定するだけで、ポイントはクリップされません。平面にまたがるポリゴンのすべての頂点に対してこれを行うと、ポリゴンは(とにかくその平面に対して)クリップされません。

それについてglPolygonOffset (...)は、ラスタライズ中に計算された深度に影響します。クリッピング後に発生し、同様にクリッピングはポリゴンの深さとは関係がないため、役に立たないことは間違いありません。これを機能させるには、プリミティブ アセンブリの前/最中に頂点を変換する必要があります。つまり、頂点シェーダーで変換を実行するか、固定機能のモデルビュー マトリックスを使用する必要があります。

于 2014-01-16T01:40:44.453 に答える