【C++】C++でDirectX11プログラミング

画像は書籍の付録についてたサンプルプログラム。

書籍はI・O BOOKSの『DirectX11 3Dプログラミング』

350ページ以上ある本の半分以上、12章(12章はHLSLの解説なので実質11章分)を費やしてやっとこの図形の表示。

たったこれだけを表示するのに1000ステップ近いコードを書く必要がある。

もちろん今日だけで、そこまで読み進めて、コードも自分で書いたわけじゃなく、付録CDロムのサンプルコードに少し手を加えただけ。

ちなみに本はまだ5章までしか読んでない。

本自体は、DirectXのプログラミングに必要なことがしっかり書かれていて、使うAPIや構造体の定義なども詳細に書かれているので、読み物としてだけじゃなくリファレンスとしも使えそうだ。

その分、教科書を読んでいるような退屈さはあるが、しっかり基礎を学びたい人向けの内容だと思う。

個人的にとてもありがたかったのは、サンプルのコードが非常にシンプルに作られていたこと。

凝ったクラス分けなどがなく、ひとつのCPPファイルに処理がフラットに記述されているので、コードを読むことが、DirectXの描画ロジックの解説になっているというところ。

もちろん、独自の外部ライブラリなんてものはない。全てがフルスクラッチ。

ウィンドウの作成ロジックはもちろん、ウィンドウリサイズや、フルスクリーン時の挙動、デバイス消失時の復帰なども同時に学べるのがありがたい。

それにしても、C++の3Dプログラミングってめんどくさいなあ。

JavaのOpenGLも画面にキューブを出すまでけっこう大変だったけど、define定義された型やら構造体やらポインタやらが加わって、体感的にさらに3倍くらいめんどくさくした感じだ。

ゲームエンジンでいいじゃん。とつぶやく俺がいるのであった。

4年前

コメントを残す

メールアドレスが公開されることはありません。