ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

サンプルフレームワークのコールバック関数のメモ

DirectXのサンプルフレームワークはコールバック関数ベースで作られている。ということでどんなコールバック関数があるかのメモ。

IsD3D9DeviceAcceptable
バイスを生成する前にディスプレイドライバがサポートしているフォーマットごとこの関数が呼ばれる。必要としている機能を満たしていればtrueを返し、満たしていないときはfalseを返す。DXUTSetCallbackD3D9DeviceAcceptableで登録する。
OnD3D9CreateDevice
アプリケーションが初期化されたとき、ウィンドウモード/フルスクリーンモードの切り替え時などデバイスが生成されたときに呼ばれる。DXUTSetCallbackD3D9DeviceCreatedで登録する。
OnD3D9ResetDevice
アプリケーションのウィンドウサイズが変更されたときなどデバイスがリセットされたときに呼ばれる。DXUTSetCallbackD3D9DeviceResetで登録する。
OnD3D9LostDevice
バイスがロストしたときに呼ばれる。DXUTSetCallbackD3D9DeviceLostで登録する。
OnD3D9DestroyDevice
バイスが破棄されるときに呼び出される。DXUTSetCallbackD3D9DeviceDestroyedで登録する。
ModifyDeviceSettings
バイスが生成される直前に呼ばれる。ここでデバイス生成のためのパラメータを変更できる。DXUTSetCallbackDeviceChangingで登録する。
MsgProc
メッセージハンドラ。Windowメッセージの処理をここで行う。DXUTSetCallbackMsgProcで登録する。
OnFrameMove
フレームごとの更新処理を行う。引数として起動時からの経過時間と前フレームからの経過時間が渡される。DXUTSetCallbackFrameMoveで登録する。
OnD3D9FrameRender
フレームごとの描画処理を行う。引数としてデバイスへのポインタと経過時間が渡される。DXUTSetCallbackD3D9FrameRenderで登録する。


サンプルのEmptyProjectで登録されているコールバック関数は上のとおり。ゲームで主に記述していくのはOnFrameMoveとOnD3D9FrameRenderだろう。