C#+DirectX

ネット上での書き込み等を見ていると,C#DirectXの組み合わせの本がなくて困っているという人が目につきます.今その組み合わせで本書いたら儲かるのかなーとも思いつつ,いくつかアドバイスみたいなもんでも.

C#の勉強のためにManaged DirectX(MDX)でゲームを作ってみようと思っているのですが……

もしあなたがC# .NETも全くの初心者ということであれば,残念ですがその組み合わせはお勧めできません.確かに言語習得のモチベーションをうまくコントロールしようという姿勢は素晴らしいと思います.しかしMDXを選ばずともC#を学ぶための書籍や教材は非常に充実しているのです.C言語の教材のソースといえばたいして役にも立たない退屈なものという印象が強いですが,C#と.NETに関しては実用的でチャレンジに値するものがきっと見つかると思います.そんな素晴らしい教材が沢山あるのに気付いていましたか? GCやリフレクションやシリアライズが当たり前の存在を世界はもう堪能しましたか? 最初から敢えてMDXを入門用に選ぶのは,C#の知識と.NETの知識とDirectXの知識を同時に学ぶという選択なのです.というわけで「C#初心者の私がMDXでゲームを作っていたらみるみるC#スキルが上達!」ってのを期待している人は気をつけてください.どちらかというと「C#(というより.NET)でそこそこ設計ができるようになってからMDXの設計を見ると作者(Tom Miller氏)の思考を垣間見ることができた」という場合の方が多いのではないかと思います.

MDXのヘルプが酷いです

これは私も酷いと思っています.現状Undocumentedな問題に関しては積極的にGDN/JのManaged DirectX フォーラムを利用すると良いでしょう.私もできる限りサポートはしたいと思っています.DirectX 9.0 SDK Update (Summer 2004)ではヘルプの拡充と日本語化が確定しているので,それに期待して耐えてください.

英語が苦にならないという人は是非『Managed Directx 9: Kick Start : Graphics and Game Programming』(asin:0672325969)という本を入手されることをおすすめします.MDXの制作者ご自身が書かれただけあって非常に充実した内容です.私はよく「有償ヘルプ」と呼んでいます.

それでも本が欲しいんです

確かにチュートリアル本は今書くと競争相手が少なくてそれなりに売れるかもしれません.ただ,現状その手のチュートリアル本の想定読者層にC#.NET Frameworkの知識を前提と出来そうもないことが色々デッドロックに近い状況を生み出しているような気もします.安全を考慮して書くと半分以上C#と.NETの解説本になっちゃうんじゃないでしょうか? 欲しいのはそういう本ですか? (この辺は以前GDN/Jのフォーラムに参考書についてまとめたことがあるので,そちらの投稿も参考にしてみてください)

ゲーム制作という観点では,.NET環境に移行することで得られるメリットにフォーカスした記事も潜在的な需要はあると思っています.「MarshalByRefObjectによる描画命令のフック」,「シリアライズによる暗号化データアーカイブの作成」,「動的コンパイルを使ったC#によるゲームスクリプティング」など,まとめて本にしてよし単発で雑誌に投稿してよしと色々面白いネタが沢山転がっているように見えます.我こそはという人は是非チャレンジしてみてください.