Platform SDK: DirectX |
ここでは、C および C++ でのアプリケーション開発について説明する。Visual Basic については、「Direct3D 直接モード Visual Basic チュートリアル」を参照すること。
テクスチャ処理されたプリミティブとテクスチャ処理されていないプリミティブのレンダリングには 1 つだけ違いがある。それは、テクスチャ処理されたプリミティブの場合、レンダリングの際にテクスチャを設定する必要があるという点である。
次のコードは Texture アプリケーションのコードの一部である。このコードでは、テクスチャ サーフェス g_pddsTexture1 を使用して立方体の前面および背面を描画している。
pd3dDevice->SetTexture( 0, g_pddsTexture1 ); pd3dDevice->DrawPrimitive( D3DPT_TRIANGLESTRIP, D3DFVF_VERTEX, g_pCubeVertices+0, 4, NULL ); pd3dDevice->DrawPrimitive( D3DPT_TRIANGLESTRIP, D3DFVF_VERTEX, g_pCubeVertices+4, 4, NULL );
IDirect3DDevice7::SetTexture メソッドは、デバイスで指定されたステージにテクスチャを割り当てる。このチュートリアルではマルチ テクスチャ ブレンディングを使用しないため、SetTexture の第 1 パラメータを 0 にしてステージ識別子に 0 を指定している。第 2 パラメータは、テクスチャとして設定する IDirectDrawSurface7 オブジェクトを指定する。
立方体の上面と底面、および左側面と右側面にも同じプロシージャを使用して、それぞれ g_pddsTexture2 と g_pddsTexture3 を設定する。この方法については、SDK 付属の Texture アプリケーションを参照すること。
テクスチャのレンダリングの詳細については、「テクスチャ サーフェスを使用したレンダリング」を参照すること。
マルチ テクスチャ ブレンディングの詳細については、「マルチ テクスチャ ブレンディング」を参照すること。