Platform SDK: DirectX

ステップ 4 : レンダリング ループを実行する

[C++]

ここでは、Visual Basic でのアプリケーション開発について説明する。C++ については、「Direct3D 直接モードの C/C++ チュートリアル」を参照すること。

[Visual Basic]

アプリケーション ウィンドウの作成と DirectX オブジェクトの作成に続き、シーンの初期化を終了すると、いつでもシーンのレンダリングを行える状態になる。サンプル Triangle のレンダリング ループでは、アプリケーション定義サブルーチン RenderScene と FrameMove を呼び出してシーンをレンダリングする。

Do While g_bRunning = True
CNT = CNT + 1
RenderScene
FrameMove (CNT / 360)
        
g_dx.GetWindowRect Me.hWnd, g_rcDest
    
j = g_ddsPrimary.Blt(g_rcDest, g_ddsBackBuffer, g_rcSrc, DDBLT_WAIT)
If j <> DD_OK Then
MsgBox "転送元矩形を転送先サーフェスにコピーできません。" & _
Chr$(13) & Hex(j)
End
End If
DoEvents
Loop

レンダリング ループは無限に続くように見えるが、Form_Unload プロシージャがトリガされると終了する。詳細については、「ステップ 5 : シャット ダウンを行う」を参照すること。

シーンをレンダリングするレンダリング ループは、次のステップに分けられる。