Platform SDK: DirectX |
ここでは、C および C++ でのアプリケーション開発について説明する。Visual Basic については、「Direct3D 直接モード Visual Basic チュートリアル」を参照すること。
アプリケーション ウィンドウを作成すると、DirectX プライマリ オブジェクトの初期化を開始できる。このオブジェクトのサービスを利用して、シーンのレンダリングを行う。Direct3D アプリケーションにとって、初期化とは、DirectDraw、レンダリング サーフェス、レンダリング デバイス、およびビューポートを作成および構成することを意味する。理解しやすくするため、サンプル Triangle では、システム オブジェクト初期化コードとシーン初期化コードを別々にしている。その結果、ジオメトリ、アプリケーションに特有なデータ構造体、マテリアルなどの Direct3D のセカンダリ オブジェクトが、シーンと共に初期化されている。これは必須ではなく、コードをより簡単にするために行ったものである。
サンプル Triangle は、ウィンドウの作成後に、アプリケーション定義関数 Initialize3Denvironment を WinMain から呼び出してシステム初期化を実行する。そうしたオブジェクトの準備は複雑ではないが、コードはやや長くなり、1 個所だけで説明することはできない。そこで、Initialize3Denvironment 関数がとるステップを以下に示す。
注 : サンプル コード Triangle は、WM_CREATE などのシステム生成メッセージに応答するのではなく、アプリケーション ウィンドウの作成直後に WinMain 関数の内部からメソッドを呼び出して初期化を行う。これは、プラットフォーム間で異なる可能性のあるシステム メッセージの指示に依存するのを避けるためである。