次の方法で共有


頂点データ ストリーム (Direct3D 9)

Direct3D のレンダリング インターフェイスは、1 つ以上のデータ バッファーに格納されている頂点データからプリミティブをレンダリングするメソッドで構成されます。 頂点データは、頂点コンポーネントを形成するために結合された頂点要素で構成されます。 頂点の最小単位である頂点要素は、位置、法線、色などのエンティティを表します。

頂点コンポーネントは、1 つのメモリ バッファーに連続して格納される (頂点ごとにインターリーブされる) 1 つ以上の頂点要素です。 完全な頂点は 1 つ以上のコンポーネントで構成され、各コンポーネントは個別のメモリ バッファー内にあります。 プリミティブをレンダリングするために、複数の頂点コンポーネントが読み取られ、完全な頂点が頂点処理に使用できるようにアセンブルされます。 次の図は、頂点コンポーネントを使用してプリミティブをレンダリングするプロセスを示しています。

頂点コンポーネントを使用してプリミティブをレンダリングするプロセスの図

レンダリング プリミティブは、2 つの手順で構成されます。 まず、1 つ以上の頂点コンポーネント ストリームを設定します。次に、 IDirect3DDevice9::D rawPrimitive メソッドを呼び出して、それらのストリームからレンダリングします。 これらのコンポーネント ストリーム内の頂点要素の識別は、頂点シェーダーによって指定されます。

IDirect3DDevice9::D rawPrimitive メソッドは、頂点データ ストリームのオフセットを指定して、1 セットの頂点データ内のプリミティブの任意の連続したサブセットを描画呼び出しごとにレンダリングできるようにします。 これにより、同じ頂点バッファーからレンダリングされるプリミティブのグループ間でデバイスのレンダリング状態を変更できます。

インデックス付き描画メソッドとインデックスなし描画メソッドの両方がサポートされています。 詳細については、「 頂点バッファーとインデックス バッファーからのレンダリング (Direct3D 9)」を参照してください。

プリミティブのレンダリング