参考:wisdomsoft(旧),○×つくろーどっとコム,IO別冊 DirectX9実践プログラミング
どうも。aqualengthです。1
本シリーズではベターCとDirectX9を使って簡単なゲームを作ることを目標に、いくつかの章に分けて記事を書こうと思います。2
今回は環境構築編です。
環境構築はあまり得意ではないので雑な回です。
開発環境
- OS:NT系Windows(Windows10)
- ゲームエンジン:DirectX9
- 言語1:ベターC(C++) 基本的にDirectXを呼ぶためだけにC++を使います
- 言語2:HLSL 2.0
- パラダイム:オブジェクト指向 ベターCを使うと言いながらオブジェクト指向を使っていきます。ゲームと相性が良いので仕方ないです。
必要なコンパイラ
- C++コンパイラ:g++(MinGW)
- HLSLコンパイラ:fxc(DirectX SDK)
- リソースコンパイラ:windres(MinGW)
MinGWのインストール
gccやwindresなどの入っているツール群のMinGWをインストールしますが、複雑なのでインストール自体は他の記事に託します。
インストール出来たか確認してみましょう。
Win+EでWindowsエクスプローラを開き、適当な作業用のフォルダに移動します。
「表示タブ」から「ファイル拡張子」のチェックボックスにチェックが付いていることを確認し、
右クリック→「新規作成」→「テキストドキュメント」を選択し、テキストファイルを作成します。
名前を「(適当な名前).rc」にします(今回はtest.rcにしました)
作成したファイルを右クリック→プログラムから開く→別のプログラムを選択
でお好みのテキストエディタ(メモ帳やgVim,サクラエディタなど)で開き、以下のように入力します。
STRINGTABLE {
1 "世 界 中 に 狂 気 と 混 乱 を"
}
その後、エクスプローラのアドレス欄に「cmd」と入力し、以下のコマンドを打ちます
windres test.rc test.o
エラーが出なければ成功です。
Microsoft DirectX SDK(June 2010)のインストール
サイトからMicrosoft DirectX SDK(June 2010)をダウンロードし、インストーラを起動してインストールします。
環境変数の設定
Windowsボタン→設定→設定の検索に「環境変数」と入力→環境変数を編集
で設定画面を開きます。
環境変数にPathがあればPathを選択して編集,
なければ新規→変数名に「Path」を入力します。
新規→「%DXSDK_DIR%\Utilities\bin\x86」を入力します。
MinGWの環境変数を設定していない場合はこのタイミングで設定しておきます。
MinGWのフォルダからbinを探し出して、Shift+右クリック→パスのコピーでパスをコピーし、
新規→Ctrl+V
です。
DirectX SDKがインストール出来たか確認します。
Win+EでWindowsエクスプローラを開き、適当な作業用のフォルダに移動します。
テキストファイルを作成し、名前を「(適当な名前).fx」(今回はtest.fx)にします。
ファイルに以下の内容を打ち込みます。
sampler smp;
float pxWidth;
float pxHeight;
//頂点シェーダ
void NotTrans(inout float4 pos:POSITION,inout float2 zpos:TEXCOORD0,inout float4 col:COLOR0){ //変換しない
pos.x-=0.5*pxWidth;
pos.y+=0.5*pxHeight;
}
//ピクセルシェーダ
void Mapping(in float2 uv:TEXCOORD0,out float4 col:COLOR0){ //テクスチャマッピング
col=tex2D(smp,uv);
}
technique BasicTech{
pass P0{ //テクスチャをそのまま貼り付け
VertexShader=compile vs_2_0 NotTrans();
PixelShader=compile ps_2_0 Mapping();
}
}
コマンドプロンプトを開き、以下のコマンドを入力します。
fxc test.fx /T fx_2_0 /Fo test.bin
「compilation succeeded」と表示されれば成功です。







