Dolphin VS サンプル

Dolphin VS サンプル

説明

Dolphin VS サンプルでは、イルカと海底にコースティック エフェクトを適用した、イルカが泳ぐ水中のシーンを示す。イルカはトゥイーニングと呼ばれる手法を使ってアニメーションされる。水中のエフェクトにはフォグを使用し、ウォーター コースティクスにはアニメーションした一連のテクスチャを使用している。これらのエフェクトは、頂点シェーダを使って実現されている。

パス

ソース ファイル : (SDK ルート)\Samples\C++\Direct3D\DolphinVS

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

ユーザーズ ガイド

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

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

プログラミング上の注意

このサンプルでは、複数の処理が行われている。

  • 2 つの頂点シェーダが使用されている。1 つはイルカに、もう 1 つは海底に使用されている。頂点シェーダは、DolphinTween.vsh と SeaFloor.vsh の 2 つのファイルからアセンブルされるアセンブリ命令である。
  • イルカにはトゥイーニング (モーフィングの一種) を適用する。これを行うために、複数の頂点ストリームで 3 種類のイルカを渡す。頂点シェーダは、各メッシュの重み付けされた座標位置を使って、出力位置を生成する。次に、頂点をライティングし、テクスチャ座標を計算し、フォグを追加する。
  • 海底も同様に処理されるが、トゥイーニングの必要はない。コースティク エフェクトは、32 の一連のテクスチャをアニメーションして、別のアルファ ブレンディング パスで追加する。コースティクスのテクスチャ座標は頂点シェーダで生成され、TEXCOORDINDEX ステージ 1 として保存される。

このサンプルでは、ヘルパー関数などのプログラミング要素から構成される共通の Microsoft® DirectX® コードを使っている。このコードは DirectX ソフトウェア開発キット (SDK) の他のサンプルと共有されている。サンプル フレームワークのヘッダーは (SDK ルート)\Samples\C++\Common\Include、ソース コードは (SDK ルート)\Samples\C++\Common\Src にある。