1 | #include "#name#.idx"
|
---|
2 |
|
---|
3 |
|
---|
4 | Dim ScreenX = 640 As Long 'ディスプレイの幅 (ピクセル単位)
|
---|
5 | Dim ScreenY = 480 As Long 'ディスプレイの高さ(ピクセル単位)
|
---|
6 |
|
---|
7 | ' TODO: この位置にグローバル変数を定義してください。
|
---|
8 |
|
---|
9 |
|
---|
10 | Function InitProc() As Boolean
|
---|
11 | 'DirectXを初期化
|
---|
12 | If dx_Init(hMainWnd, ScreenX, ScreenY, FALSE)=0 Then
|
---|
13 | InitProc=False
|
---|
14 | Exit Function
|
---|
15 | End If
|
---|
16 |
|
---|
17 | 'マウスカーソルを非表示にする
|
---|
18 | ShowCursor(FALSE)
|
---|
19 |
|
---|
20 | ' TODO: この位置にアプリケーションの初期化コードを記述してください。
|
---|
21 |
|
---|
22 | InitProc = True
|
---|
23 | End Function
|
---|
24 |
|
---|
25 | Sub QuitProc()
|
---|
26 | ' TODO: この位置にアプリケーションの終了処理を記述してください。
|
---|
27 |
|
---|
28 | 'DirectXの終了処理
|
---|
29 | dx_Quit()
|
---|
30 | End Sub
|
---|
31 |
|
---|
32 | Sub InputActionProc()
|
---|
33 | ' TODO: この位置に入力に関するコードを記述してください。
|
---|
34 | ' (キーボード、マウス、ジョイパッド、ジョイスティックなどによる入力)
|
---|
35 |
|
---|
36 | ' メモ - キャラクタの移動など、状況進行(アクション)を意味するコードを
|
---|
37 | ' 記述することもできます。
|
---|
38 |
|
---|
39 | End Sub
|
---|
40 |
|
---|
41 | Sub RenderProc()
|
---|
42 | ' TODO: この位置に描画に関するコードを記述してください。
|
---|
43 |
|
---|
44 | End Sub
|
---|
45 |
|
---|
46 |
|
---|
47 | '------------------------------------------------
|
---|
48 | ' 初期化処理
|
---|
49 | '------------------------------------------------
|
---|
50 |
|
---|
51 | If InitProc() = False Then
|
---|
52 | MessageBox(0,"初期化に失敗しました。","Error",MB_OK or MB_ICONEXCLAMATION)
|
---|
53 | ExitProcess(0)
|
---|
54 | End If
|
---|
55 |
|
---|
56 |
|
---|
57 | '------------------------------------------------
|
---|
58 | ' メインループ
|
---|
59 | '------------------------------------------------
|
---|
60 | Dim msgMain As MSG, iResult As Long
|
---|
61 | Dim bDeviceLost As Long
|
---|
62 | Do
|
---|
63 | If PeekMessage(msgMain,0,0,0,PM_REMOVE) Then
|
---|
64 | '----------------------------------
|
---|
65 | ' メインウィンドウのメッセージ処理
|
---|
66 | '----------------------------------
|
---|
67 |
|
---|
68 | If msgMain.message=WM_QUIT Then Exit Do
|
---|
69 | TranslateMessage(msgMain)
|
---|
70 | DispatchMessage(msgMain)
|
---|
71 | Else
|
---|
72 | '---------------------------
|
---|
73 | ' DirectXによる入力及び描画
|
---|
74 | '---------------------------
|
---|
75 |
|
---|
76 | If bDeviceLost Then
|
---|
77 | 'デバイスが消失しているとき
|
---|
78 | If dx_RestoreDevice()=D3D_OK Then
|
---|
79 | bDeviceLost=FALSE
|
---|
80 | Else
|
---|
81 | Continue
|
---|
82 | End If
|
---|
83 | End If
|
---|
84 |
|
---|
85 | InputActionProc() '入力
|
---|
86 |
|
---|
87 | dx_BeginScene() '描画を開始
|
---|
88 | dx_Clear() '画面をクリア
|
---|
89 | RenderProc() 'レンダリング(描画)
|
---|
90 | dx_EndScene() '描画を終了
|
---|
91 |
|
---|
92 | '画面を更新
|
---|
93 | If Not(dx_Present()=D3D_OK) Then
|
---|
94 | 'デバイスの消失が確認されたとき
|
---|
95 | bDeviceLost=TRUE
|
---|
96 | End If
|
---|
97 | End If
|
---|
98 | Loop
|
---|
99 |
|
---|
100 |
|
---|
101 | '------------------------------------------------
|
---|
102 | ' 終了処理
|
---|
103 | '------------------------------------------------
|
---|
104 |
|
---|
105 | QuitProc()
|
---|
106 | System.Environment.ExitCode = msgMain.wParam As Long
|
---|
107 | End
|
---|