ファイル構成

サンプルプログラムは以下のファイルから構成されています。

DirectX管理 dx_audio.cpp
dx_audio.h
Direct Audio を使用した Midi、Wave 再生機能を提供します。
dx_graphic.cpp
dx_graphic.h
Direct Graphics を使用した2D描画機能、3D描画機能を提供します。
Window管理
システム管理
win_main.cpp
win_main.h
ウインドウ管理を行います。
Win32APIを使用したキー入力、マウス入力を提供します。
ゲームメイン

game.cpp
game.h

ゲームのメイン処理を記述します。


 関数リファレンス (サウンド系)

サウンド再生機能は dx_audio モジュールにより提供されます、使用に際しては dx_audio.h をインクルードして下さい。

AdoInit 処理概要
DirectAudio初期化を行う。
パラメータ
無し
戻り値 BOOL
TRUE  DirectAudio初期化成功
FALSE  DirectAudio初期化失敗

注意
システム側で dx_audio モジュール使用前に呼び出す、初期化失敗時にはプログラムを終了させる。
AdoRelease 処理概要
DirectAudioの開放を行う。
パラメータ
無し
戻り値
無し
注意
プログラム終了時にシステム側で呼び出す。
AdoLoadSnd 処理概要
サウンドデータのロードを行う。
パラメータ
int no サウンド番号
char *fn ファイル名

戻り値
TURE サウンドデータロード成功
FALSE サウンドデータロード失敗
注意
サウンドバッファの最大数は定数SND_MAXにより定められる。
AdoPlaySnd 処理概要
サウンドの再生を行う
パラメータ
int no    サウンド番号
int IsLoop ループさせるかどうか (0:しない、1:する)
SEG_TYPE type
 SEG_PRAIMARY プライマリで再生
 SEG_SECONDARY セカンダリで再生
戻り値
無し
AdoStopSnd

処理概要
サウンドの停止を行う
パラメータ
int no サウンド番号
戻り値
無し

AdoReleaseSnd 処理概要
サウンドデータの解放を行う。
パラメータ
int no サウンド番号
戻り値
無し


 関数リファレンス (グラフィックス系)

2D描画機能、3D描画機能は dx_graphic モジュールにより提供されます、使用に際しては dx_graphic.h をインクルードして下さい。

GrpInit 処理概要
Graphics初期化を行う。
パラメータ
無し
戻り値 BOOL
TRUE  DirectGraphics初期化成功
FALSE  DirectGraphics初期化失敗

注意
システム側で dx_graphic モジュール使用前に呼び出す、初期化失敗時にはプログラムを終了させる。
GrpRelease
処理概要
DirectGraphicsの開放を行う。
パラメータ
無し
戻り値
無し
注意
プログラム終了時にシステム側で呼び出す。
GrpLoadTexture 処理概要
指定IDのテクスチャバッファにテクスチャのロードを行う。
パラメータ
int idx テクスチャバッファID
char *bmp_name ロードファイルへのパス
D3DCOLOR rgba カラーキー指定 (省略時はカラーキー無効)

戻り値
無し
注意 
rgba カラーキー指定は省略可能
サウンドバッファの最大数は定数TEX_MAXにより定められる。
GrpReleaseTexture 処理概要
テクスチャの開放を行う
パラメータ
int idx テクスチャバッファID
戻り値
無し
GrpFontDisp 処理概要
デバック用フォントの表示を行う。
パラメータ
char *str 表示文字列
int x 表示X座標
int y 表示Y座標
D3DCOLOR color 表示色 (D3DCOLOR_RGBA マクロにより指定)
戻り値
無し
GrpSprDraw 処理概要
スプライトの描画を行う。
パラメータ
int x 表示X座標
int y 表示Y座標
int idx テクスチャバッファID
int u テクスチャU
int v テクスチャV
int w テクスチャ幅
int h テクスチャ高さ
戻り値
無し
GrpSprRGBASet 処理概要
スプライトRGBAセット
パラメータ
BLEND_MODE mode
 D3DBLEND_NORMAL 通常アルファブレンド
 D3DBLEND_ADD 加算アルファブレンド
D3DCOLOR rgba RGBA (D3DCOLOR_RGBA マクロにより指定)
戻り値
無し
注意
設定データが適応されるのは次回に呼び出される GrpSprDraw 関数
GrpSprScaleSet 処理概要
スプライトスケールセット
パラメータ
float sx スケールX
float sy スケールY
戻り値
無し
注意
設定データが適応されるのは次回に呼び出される GrpSprDraw 関数
GrpSprAngleSet 処理概要
スプライト回転角セット
パラメータ
float angle 回転角
float cx,cy 回転中心X、回転中心Y (拡大縮小時にも使用)
戻り値
無し
注意
設定データが適応されるのは次回に呼び出される GrpSprDraw 関数
GrpPolyDraw 処理概要
単色ポリゴンの表示を行う。
パラメータ
float x 表示X座標
float y 表示Y座標
float w 幅
float h 高さ
D3DCOLOR rgba RGBA (D3DCOLOR_RGBA マクロにより指定)
戻り値
無し
GrpSetProjMat 処理概要
透視変換行列の設定を行う。
パラメータ
float clip_near Near クリップ値
float clip_far Far クリップ値
戻り値
無し
GrpSetViewMat 処理概要
カメラ行列の設定を行う。
パラメータ
D3DXVECTOR3 eye 注視点
D3DXVECTOR3 pos カメラ位置
戻り値
無し
GrpSetRotTransMat 処理概要
座標系マトリックス計算関数
スケール、回転、移動変換後のマトリックスを計算する。
パラメータ
D3DXMATRIX &wmat スケール→回転→移動 変換後のマトリックス
D3DXMATRIX &s スケール
D3DXMATRIX &t  移動
D3DXMATRIX &r  回転
戻り値
無し
GrpSetBillBoardMat 処理概要
ビルボード用回転マトリックス計算を行う。
パラメータ
D3DXMATRIX &wmat ビルボード用回転マトリックス
D3DXMATRIX &t 移動ベクトル
戻り値
無し
GrpTLVertexSet 処理概要
光源無し、座標変換無し頂点(D3DTLVERTEX)情報セット
パラメータ
D3DTLVERTEX *v 頂点
float x, y, z 表示X、表示Y、表示Z
float tu,tv テクスチャU、テクスチャV
D3DCOLOR rgba RGBA (D3DCOLOR_RGBA マクロにより指定)
戻り値
無し
GrpLVertexSet 処理概要
光源無し、座標変換有り頂点(D3DLVERTEX)情報セット
パラメータ
D3DLVERTEX *v 頂点
float x, y, z 表示X、表示Y、表示Z
float tu,tv テクスチャU、テクスチャV
D3DCOLOR rgba RGBA (D3DCOLOR_RGBA マクロにより指定)
戻り値
無し
GrpVertexSet 処理概要
光源有り、座標変換有り頂点(D3DVERTEX)情報セット
パラメータ
D3DVERTEX *v 頂点
float x, y, z 表示X、表示Y、表示Z
float nx, ny, nz 法線X、法線Y、法線Z
float tu,tv テクスチャU、テクスチャV
戻り値
無し
GrpSetLiht 処理概要
ライトの初期化、ON / OFF切り替えを行う。
パラメータ
D3DLIGHT_MODE mode
 D3DLIGHT_INIT ライト初期化
 D3DLIGHT_ON ライトON
 D3DLIGHT_OFF ライトOFF
戻り値
無し
GrpSetFog 処理概要
フォグの設定を行う。
パラメータ
float st フォグ開始点
float end フォグ終了点
D3DCOLOR col フォグカラー (D3DCOLOR_RGBA マクロにより指定)
戻り値
無し
GrpVecCnv2d 処理概要
3D座標 → 2D座標変換を行う。
パラメータ
D3DXVECTOR3* out_vec 2Dスクリーン座標変換結果、格納先ベクトル
D3DXVECTOR3* cnv_vec 座標変換元ベクトル
D3DXMATRIX* world ワールド座標変換行列
戻り値
無し
GetD3DDevice 処理概要
Direct3D デバイスのポインタの取得を行う。
パラメータ
無し
戻り値 LPDIRECT3DDEVICE8
Direct3D デバイスのポインタ
GetTextureBuf 処理概要
テクスチャバッファの取得を行う。
パラメータ
int idx 取得テクスチャバッファID
戻り値
テクスチャバッファのポインタ


 関数リファレンス (システム系)

ウインドウ管理、システム管理機能は win_main モジュールにより提供されます、使用に際しては
win_main.h をインクルードして下さい。

SysErrMsgDisp 処理概要
メッセージボックスにエラーメッセージ表示を行う。
パラメータ
char *msg エラーメッセージ
戻り値
無し
SysDirGet 処理概要
実行ファイルまでのパスを返す。
パラメータ
無し
戻り値 char *
実行ファイルまでのパス
SysKeyGet 処理概要
キー入力処理を行う。
パラメータ
unsigned int code 仮想キーコード
int *state キー状態
 FREE_KEY キーが押されていない状態
 PUSH_KEY キーを押した瞬間
 PULL_KEY キーが離された瞬間
  HOLD_KEY キーが押されている状態
戻り値
 無し
GetSysHwnd 処理概要
ウインドウハンドルの取得を行う。
パラメータ
無し
戻り値 HWND
ウインドウハンドル
GetSysMousPosX

処理概要
マウスX座標の取得を行う。
パラメータ
無し
戻り値 int
マウスX座標

GetSysMousPosY 処理概要
マウスY座標の取得を行う。
パラメータ
無し
戻り値 int
マウスY座標
GetSysFrmTime 処理概要
フレームタイム(1ループにかかった時間)の取得を行う。
パラメータ
無し
戻り値 float
フレームタイム