ひさびさに C++ でゲームプログラミングをやって思ったこと
この年末年始に C++ でゲームプログラミングを少しやってみました。C++ 言語自体は、青春をかけて(笑)AT&T Release 時代から追いかけているのでほとんど問題なく使えるのですが、本格的にゲームプログラミングに使ったのは MS-DOS 時代以来。Windows でゲームプログラミングをするときはほとんど Delphi を使っていました(DirectXを叩いて遊んでたことはありますが、プレイできるぐらいのゲームにまで至っていない)。そして最近もっとも多く使っているプログラミング言語は Java です。
そんな私が C++ でゲームプログラミングをやってみて思ったことです。
DXライブラリ便利ですね
DXライブラリを試してみたのですが、いや、これ、便利ですねぇ。なんか青春時代「Master lib」使ってゲーム作っていたのを思い出しましたよ。別にDXライブラリとMaster libが似ているというわけじゃなくて、いいライブラリがモチベーションを牽引してくれてるってところに共通点を感じました。
コーディング規約どうすんの?
私がJavaを好む理由のひとつが、標準クラスライブラリをはじめとしてまっとうなサードパーティのほとんどすべてがひとつのコーディング規約(クラスやメソッドの命名規則)に則って作成されているということです。ところが Visual C++ ではそうはいきません。Microsoft提供のものは、だいたいなんでも大文字で始まっているようですが、C/C++ 標準の関数は小文字から始まっています。とても気持ち悪いです。
ドキュメンテーションコメントは?
これが私のモチベーションをもりもりと削ぐ原因となったものです。JavaだったらJavadocがあります。では、C++は? というか、Visual C++ では何を使えばいいのでしょうか? IDE(Visual Studio)とすんなりなじむようなものは私にはよくわかりませんでした。ちなみに私が UNIX/Linux で C++ をやるときは迷わず Doxygen を使います。Windows でも Doxygen を使えるようですが、DXライブラリの関係で日本語をシフトJISにしなければならず、そうすると日本語がDoxygenで化けてしまうのです。C#のようにXMLドキュメントも試してみましたが、うまくいきませんでした(型が.Netのものとして出力された)。