フリーウェアで DirectX ゲームを開発するには
ちと話題的毛色が違うけれども俺メモとして。
ふと思い立ったので DirectX ベースのゲーム開発が出来る程度の開発環境(コンパイラとか)を GCC ベースでそろえられるのかを調べてみる事に。
Visual C++ .NET や Borland C++ Builder だのはちゃんと所有していたりするのだが、UNIX 系の人間としてはコマンドラインから make と打ちたいのです。
というか、PC 変えてから Visual C++ をインストールしていなくてその辺もめんどくさかったので。(Cygwin で GCC は必須項目として入っている不思議)
フリーでゲームが開発できる環境を目指すけれども、初心者向けの内容じゃないので注意。
○開発ライブラリ
DirectX 直接でもできるけどもちょっと楽するために既存のライブラリを物色。DirectX 系の入門記事として良く拝見している「TWIN TAIL LOVERS」さんとこの "Luna" を選択。
あとはこいつのインストール方法参照(まて
http://www.twin-tail.jp/
○コンパイラ
Cygwin UNIX like environment と GCC3.3(G++)
あと GNU make とかとか。
最近の Cygwin は MinGW 用の libstdc++ とか入っているので -no-cygwin による Win アプリ開発も容易になって良いね。
http://www.cygwin.com/
○DirectX SDK
本来は Microsoft から SDK を入手(無償)するんだけれども、それもいらない。(でも DirectX のマニュアルとか欲しい人は入手しておいたほうが良い)
というか、ライブラリの形式が違うのでそのまま GCC で使えない。
なので Microsoft の SDK を GCC (というか COFF)形式に変換したものを以下から入手する。
http://www.g-productions.net/
DirectX90c.DevPak というのがそれ。
拡張子に面食らうが中身は .tar.bz2 なんで適時解凍。
GUI がなきゃイヤだという人は DEV-C++ を用意。個人的に使わないので解説できない、Luna のところに説明があるのでそっちを参照。
適当なディレクトリに展開。
パスの指定は Makefile でなんとかする(を
Cygwin の w32api だと winnls.h だが Luna は winnls32.h を要求してくるのではまる。winnls.h を winnls32.h とシンボリックリンク張って逃げ回避。
あとは Makefile を手書き。
Makefile さえ書けてしまえば後は Meadow とコマンドラインでごりごりと開発可能。
個人的にはこっちのほうが気楽でいいや。
なんだ割と容易に開発環境揃うもんだな。
—–