上の図に示すように、1 つの頂点を 2 つの異なる UV 座標にマップする必要があります。Verity を GL_ELEMENT_ARRAY_BUFFER にバインドすることで、別のバッファーでインデックスを作成できることはわかっていますが、これは同じインデックスで UV をバインドします。UV にインデックスを付ける方法を示すドキュメントや記事が見つかりません。これを行う方法があると思います。なぜなら、それは人々が便利だと思うようなものだからです。どうすればいいのですか ?
1 に答える
2
簡単に言うと、頂点の個々の属性にインデックスを付ける方法はありません。要素/インデックス バッファの使用は、位置、uv などの属性の順列の共有に適用されます。属性の 1 つを共有できないため、他の属性も共有できません。この問題の簡単な解決策は、必要な情報を複製して新しい順列を作成することです (異なる UV 座標を使用)。
効果的にサポートする必要があるのは、各属性に 1 つずつ、複数の要素/インデックス バッファーです。通常の属性用の要素/インデックス バッファー、UV 属性用の要素/インデックス バッファー、位置属性用の要素/インデックス バッファーです。しかし、現在の世代の OpenGL (3 または 4) または DirectX (11) (およびおそらくハードウェア レベル自体) では、これは単純に存在しません。
于 2014-04-04T06:29:23.310 に答える