Microsoft DirectX 8.0 (C++)

Emboss サンプル

説明

Emboss サンプルでは、Microsoft® Direct3D® のバンプ マッピングの別のアプローチを示す。エンボスは自分自身から高さマップを取り出し、少し変更されたテクスチャ座標を持つことによって行われる。

Direct3D のバンプ マッピングをサポートしていないカードもある。詳細については、Microsoft DirectX® SDK のマニュアルを参照すること。

パス

ソース :(SDK ルート)\Samples\Multimedia\Direct3D\Emboss

実行可能ファイル :(SDK ルート)\Samples\Multimedia\Direct3D\Bin

ユーザーズ ガイド

次の表は実装されているキーを示している。メニュー コマンドを使って同じ操作を行うことができる。

キー アクション
Enter シーンを開始および停止する。
Space シーンを少しずつ進める。
F2 新しいレンダリング デバイスまたはディスプレイ モードを選択するようユーザーに指示する。
Alt + Enter フルスクリーン モードとウィンドウ モードを切り替える。
Esc アプリケーションを終了する。
Ctrl-E エンボス エフェクトのオン/オフを切り替える。

プログラミング上の注意

バンプ マップは摂動データを保存するテクスチャである。バンプ マッピングは 2 つのテクスチャを必要とする。1 つは環境マップで、シーン内で表示されるライトが含まれる。もう 1 つは実際のバンプ マッピングであり、環境マップのテクスチャ座標をバンプするために使用される値 (du および dv) が含まれる。一部のバンプ マップでは、特定のテクセルの輝きを制御する輝度の値も含まれる。

このサンプルでは、バンプ マップはトラの表皮のエンボスに使用されている。

このサンプルでは、ヘルパー関数などのプログラミング要素から構成される共通の DirectX コードを使用している。このコードは DirectX SDK のほかのサンプルと共有されている。共通のヘッダーおよびソース コードは、(SDK ルート)\Samples\Multimedia\Common にある。