GL_TRIANGLE_STRIP
でのみ実行可能なポリゴンとGL_TRIANGLE_FAN
でのみ実行可能な別のポリゴンの例が必要です。
Triangle StripとTriangle Fanの違いがわかれば、形を作るのは簡単です。
たとえば、Triangle Stripは、頂点を共有する接続された三角形のセットです。
Triangle Stripを使用すると、指定された頂点を使用して、次の出力を取得できます。
Triangle Fanも接続された三角形のセットですが、これらすべての三角形には共通の頂点があります。これは中央の頂点です。
OpenGLでは、中心の頂点はTriangle Fanで最初に指定された頂点です。
Triangle Fanと他の例と同じ頂点を使用すると、出力としてcolored areaのみを取得できます。これは、Triangle Fanの頂点の配列順序の重要性によるものです。 基本的に、すべての頂点は中央の頂点を回る必要があります。
頂点の2つのサンプルセットを見るとわかるように、これらの「出力形状」はTriangle StripとTriangle Fanの両方に固有です。
同様の答えをしました ここ 、必要に応じて読むことができます、質問は密接に関連しているため、実際には同じ画像を使用しました。
純粋なテキストで答えるのは難しい。ファンの場合、S形状は不可能です(一般的に、every triangleに共通する点があるため、ファンは制限されていることに注意してください)。
他の方法については-それはトリックの質問です。 triangle_stripは、すべてのtriangle_fanポリゴンを処理できますが、少し工夫が必要です。次のポリゴンを検討してください(表示されている順序はtriangle_fanのものです)
3--4--5
|\ | /|
2--1--6
| \|
8--7
これは次のように行うことができます
2-----4
| \ /|
1--3/7|
| \|
6--5
重複するポリゴンに注意してください。両面ポリゴンまたはオーバーラップを許可しない場合、これはファンのみのポリゴンの例になると思います。