Microsoft DirectX 8.0 (C++) |
VolumeTexture サンプルでは、Microsoft® Direct3D® の新しいボリューム テクスチャの使い方を示す。通常、テクスチャは 2D イメージであると考えられ、幅と高さを持ち、そのテクセルは 2 つの座標 tu と tv で指定される。ボリューム テクスチャはこれを 3D にしたもので、幅、高さ、および奥行きを持ち、3 つの座標 tu、tv、tw で指定される。
ボリューム テクスチャは、寄せ集めのフォグ、爆発などのおもしろいエフェクトに使用できる。
ボリューム テクスチャの一部の機能しかサポートしていないカードもある。ボリューム テクスチャの詳細については、Microsoft DirectX® SDK のマニュアルを参照すること。
ソース :(SDK ルート)\Samples\Multimedia\Direct3D\VolumeTexture
実行可能ファイル :(SDK ルート)\Samples\Multimedia\Direct3D\Bin
次の表は実装されているキーを示している。メニュー コマンドを使って同じ操作を行うことができる。
キー | アクション |
---|---|
Enter | シーンを開始および停止する。 |
Space | シーンを少しずつ進める。 |
F2 | 新しいレンダリング デバイスまたはディスプレイ モードを選択するようユーザーに指示する。 |
Alt + Enter | フルスクリーン モードとウィンドウ モードを切り替える。 |
Esc | アプリケーションを終了する。 |
ボリューム テクスチャは、3D テクスチャよりも使い方が難しい。このサンプルのソース コードでは、頂点の宣言 (第 3 のテクスチャ座標を持つ)、テクスチャの作成 (奥行きのディメンジョンを持つ)、およびテクスチャのロック (これも第 3 のディメンジョンを持つ) に注意すること。3D ラスタライザは、2D テクスチャの場合と同様に、テクセル値を補間する。
このサンプルでは、ヘルパー関数などのプログラミング要素から構成される共通の DirectX コードを使用している。このコードは DirectX SDK のほかのサンプルと共有されている。共通のヘッダーおよびソース コードは、(SDK ルート)\Samples\Multimedia\Common にある。