シューティングゲーム用のプロジェクトの準備と,シューティングゲームの元になるシンプルなプログラムを動作させてみよう |
【ゲーム用プロジェクトのための設定】(最初に一回だけ行う設定作業)
※再履修者は,デスクトップPCで演習を行って下さい。
昨年の2011年度大学推奨ノートPCでの準備の仕方も,一応こちらに用意しています。授業中では無く,個人で行って下さい。
※2012年度の1年生で,大学推奨ノートPC以外のノートPCを持ち込んでいる場合,こちらを参考に準備してみて下さい。
※以下の作業に入る前に,使用しているWebブラウザが FireFox であることを確認せよ。
(手順0)まず,実習室据え置きのデスクトップPCで行う場合は,この手順0を行って,準備をすること。
(この授業ではできるだけ大学必携ノートPC側で実習演習を行うこと。)
2012年度大学推奨ノートPCの場合は,この手順0をスキップして,手順1へ進むこと。
↓大学実習室デスクトップPC用 |
表示されるウインドウで「ファイルを保存する」を選び,「OK」ボタンを押して『TuisDXGameKit.zip』という
ファイルをダウンロードせよ。
大学実習室デスクトップPCでの作業 |
![]() |
ダウンロードが始まると,FireFoxの「ダウンロードマネージャ」ウィンドウが開き,ダウンロードの経過が
表示される。ダウンロードが終わったら, 「ダウンロードマネージャ」ウィンドウに表示されている
『TuisDXGameKit.zip』をダブルクリックして現れるメニューから「フォルダを自動生成」・「解凍先を開く」
の2箇所にチェックを入れて,「このフォルダに解凍」を選択する。
大学実習室デスクトップPCでの作業 |
![]() |
すると,下図のように『TuisDXGameKit.zip』から抽出されたフォルダ『TuisDXGameKit』の中身が表示される。
その中身に『TuisDXGame』というフォルダがあることを確認せよ。
この『TuisDXGameKit』フォルダウインドウは暫く開いたままにしておくこと。
大学実習室デスクトップPCでの作業 |
2012年度・大学推奨ノートPCでの作業 |
■まず,プロジェクトを置くための場所を開こう。 (5)この「Projects」フォルダ内に「TuisDXGame」フォルダをコピーする。 |
■まず,プロジェクトを置くための場所を開こう。 (5)この「Projects」フォルダ内の「TuisDXGame」フォルダを開く。 |
●では,実際にプロジェクトをして実行してみよう。
・緑色の円が,ウインドウ(画面)の左上から右下に移動していくのを確認すること。
・プログラムを終了するには終了は,エスケープキーを押す。
・次回は,このプログラムの内容を解説する。
【DXライブラリについて】
・このプログラムは山田巧氏が作成した「DxLib (DXライブラリ)」を一部改造して利用させて頂いています。
『DXライブラリ置き場』http://homepage2.nifty.com/natupaji/DxLib/
(この授業で使用する改造版「DXライブラリ」とオリジナルの「DXライブラリ」の違いを知りたい人は,
下の【授業外記事】を参照して下さい。)
【授業外記事】
《注意》
このシューティングゲームに利用されているDXライブラリは,大学の授業用に改造された物です。自分でDXライブラリを利用
したプログラムを自作したい人は,以下の点に注意して下さい。
・オリジナルのDXライブラリを,上記のサイト『DXライブラリ置き場』からダウンロードして使用すること。
・DXライブラリ使用のための下準備に関しても上記のサイト『DXライブラリ置き場』の説明に従って行うこと。ただし,
オリジナルの「DxLib_VC」フォルダは,この授業で使用している「DxLib_VC」フォルダとは別の場所に置くこと。)
・プロジェクトを作る場合は,上記のサイト『DXライブラリ置き場』の説明に従ってプロジェクトを作成して下さい。
・プログラム作成上での違いは,以下の通りです。
大学の教材フォルダで 配布したDXライブラリの作法 |
オリジナルのDXライブラリの作法 |
|
mian関数の形 | int main( ) { /* 処理を書くところ */ return 0; } |
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow ){
if( DxLib_Init() == -1 ) return -1;
/* 処理を書くところ */
DxLib_End();
return 0;
} |
DxLib_Init()関数 | main関数の冒頭で自動的に呼ばれます。DXライブラリ の初期化に失敗するとプログラムは終了します。 |
DXライブラリの機能を使う前に,DxLib_Init()関数を呼び出してDXライブラリの準備 |
DxLib_End()関数 | main関数の最後(return 0; の直前)で,自動で呼ばれます。 | DXライブラリの機能を使い終わる前に,DxLib_End()関数を呼び出す必要があります。 典型的には上欄のように,main関数の最後( return 0; の直前)などで呼び出します。 その他,プログラムの実行中でも「DXライブラリの機能はもう使わない」という局面 で呼び出すと,DXライブラリに使用されていたメモリなどが解放され,それ以降のプログラムの動作などが軽快になります。 |
ProcessMessage()関数 | CheckHitKey()関数の実行時に,自動で呼び出されます。 | Windowsでスムーズにプログラムを実行させるには,このProcessMessage()関数を 1/60秒に1回くらいの頻度で呼び出す必要があります。 |
※大学で授業用に配布したDXライブラリは,授業に不要なファイルをいくつか削除した上で,オリジナルのDXライブラリの「DxLib.h」というファイルの中身を改造したものになっています。 |