Microsoft DirectX 8.0 (C++)

PointSprites サンプル

説明

PointSprites サンプルでは、Microsoft® Direct3D® の新しいポイント スプライト機能の使い方を示す。ポイント スプライトとは、(x,y,z) 位置座標によってのみ参照される前向きの、テクスチャ処理された四角形である。ポイント スプライトは、粒子システムおよび関連エフェクトでよく使用される。

ポイント スプライトの一部の機能しかサポートしていないカードもある。ポイント スプライトの詳細については、Microsoft DirectX® SDK のマニュアルを参照すること。

パス

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

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

ユーザーズ ガイド

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

キー アクション
Enter シーンを開始および停止する。
Space シーンを少しずつ進める。
W、S 前後に移動する。
E、Q 左右に移動する。
A、Z 上下に回転する。
矢印キー 上下左右にスライドする。
F1 ヘルプまたは使用可能なコマンドを表示する。
F2 新しいレンダリング デバイスまたはディスプレイ モードを選択するようユーザーに指示する。
F3 エミッタをアニメーションする。
F4 色を変更する。
Alt + Enter フルスクリーン モードとウィンドウ モードを切り替える。
Esc アプリケーションを終了する。

プログラミング上の注意

Direct3D サポートを使用しない場合は、ポイント スプライトは各フレームをビルボードと同様に視点の方に向ける 4 つの頂点を使って実装できる。Direct3D を使用する場合は、ポイント スプライトの中心位置と半径によって、各ポイント スプライトを参照できる。これによって、プロセッサの計算時間と、頂点情報をグラフィックス カードにアップロードするための帯域幅を節約できる。

このサンプルでは、各パーティクルは、複数のアルファ ブレンディングされたポイント スプライトを使用し、パーティクルにモーション ブラー エフェクトを与えて実現されている。

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