連載
.NET&Windows Vistaへ広がるDirectXの世界

第3回 .NET開発者のためのDirectX連携手法

NyaRuRu
Microsoft MVP Windows - DirectX(Jan 2004 - Dec 2006)
2006/10/04
Page1 Page2 Page3

2. XNA開発を始めようという方へ

 最後に、XNAに興味を持った方へ、XNAを面白くしていくためのヒントをいくつか紹介しておこう。

フィードバックを送ろう

 実はXNAチームには日本語の読めるスタッフがおられるということで、xna@microsoft.comまたはxna-jpn@microsoft.comへのメールは日本語で書いても通じるそうだ。筆者もXNA Game Studio Express(Beta)に付属するXNA Frameworkランタイムの再配布ライセンスについて疑問があったので日本語で質問をしてみたところ、丁寧な回答をいただくことができた。何か質問やフィードバックがあれば、これらのメール・アドレスに問い合わせてみるとよいだろう。

 また、英語版のMSDNフォーラムにはXNA関係のフォーラムが開設されていて、すでに多くの投稿がポストされている。

 バグらしき現象や追加してほしい機能などがあれば、これらのフォーラムに投稿することで、検証してくれる人や賛同者が集まるかもしれない。XNAチームの方や、以前からDirectX関係のコミュニティで活躍されていた方が多数参加しており、議論の質はかなり高い。またフォーラムのログはVisual Studio 2005などに付属するDocument Explorerからも検索可能なので、ぜひ活用してほしい。

Document Explorerで「XAN DirectInput」というキーワードを検索したところ
「質問(英語)」の項目にMSDNフォーラムのログがヒットしていることが分かる。

 また、ベータ・テスト参加者向けにバグや要望を投稿するデータベースが次のサイトに用意されている。

 このバグ・トラッキング・システムはWindows VistaやVisual Studioのベータ・テストと同じ仕組みが使われており、登録した案件についてその後どういう決定が行われたのかを追跡することができる。また、他の開発者が登録したバグや推奨事項について、コメントをつけたり重要性を投票したり、回避策を登録したりすることもできる。

 なお、何か困った現象に出会ったとき、こういったバグ・データベースを検索してみると回避策が見つかることがある。本格的にXNAに取り組もうという方は、この機会にベータ・テストに参加しておくとよいだろう。

Blogベースの盛り上がりへの期待

 MDXについて印象的だったのは、しばしば中心的な開発者であるTom Miller氏のBlogが情報が、さまざまな意見や議論の起点として機能してきたことだ。確かに以前からオンライン・フォーラムや、ネット・ニュースなどでDirectX開発者が質問に回答する光景は見られたが、顔となる開発者がBlogを通じて外部とコミュニケーションを行うというのは、DirectXではかなり画期的な話である。

 マイクロソフトの開発者のBlog利用はここ数年で一気に広まり、最近では最新の情報がまずBlogで公開されることも多くなっている。先日のWinFSリリースに関する話題の1次ソースとして、多くのサイトが開発者Blogを挙げていたことなどは記憶に新しい。ただ、依然として製品分野ごとにBlogへの力の入れ方に違いが残っているようで、例えば.NET関連技術の部門やWindows Vistaチームなどは、概してBlog利用に積極的という傾向が見られる。

 その点XNAは、.NET関係技術の例に漏れず、Blog利用に積極的な部類に入りそうだ。XNA関係で特に重要と思われるBlogを3つほど紹介しておこう。

 これらのBlogでは、XNAに関する最新情報をはじめ、ドキュメントを補足する形でのエントリや、ぜひ使ってほしいという新機能紹介、フィードバックに対する回答など多くの有益な情報が紹介されている。これからXNAに取り組むならばぜひウォッチしておきたいところだ。

 一方で、これらのBlog記事が公式に日本語訳されることはまずないということは、日本語圏の開発者としては大きな問題である。需要が多ければいずれホワイトペーパーの形で正式な文章が公開されるだろうが、それではBlogの持つ即応性が生かされず、国内に情報が伝わるまでに大きなタイムラグが生まれてしまう。この壁を乗り越えるためには、海外Blogの動向を自分のBlogで国内向けにいち早く紹介したり、オンライン・フォーラムを通じて海外のBlogエントリを紹介したりといった、国内オンライン・コミュニティの協力が不可欠といえるだろう。

XNAのエコシステムに求められる人材とは

 最初に述べたように、マイクロソフトの思惑としては「XNAを通じてゲーム制作の世界に新しい風を吹き込みたい」とのことだが、これは単にゲームを作りたいという人を集めてくるだけではないことを強調しておきたい。

 PC初期の、映像も音楽もプログラムも1人でこなすという時代を通じてソフトウェア開発の世界に足を踏み入れられたという方も多数おられるだろう。しかし、当時のような、「絵も描けて音楽も作れてプログラムもできる」という万能型のゲーム開発者は、近年ではなかなか目指しにくくなっている。分野ごとの専門化と技術の進化が進んだため、それぞれの分野での平均クオリティは大きく向上したが、これは逆に1人ですべてを極めることをずいぶんと難しくしてしまった。

 プログラミングの世界ですら分業化が進んでいる。例えば最近のゲーム開発では物理シミュレーションや統計処理が用いられることが少なくないが、その背景にはそういったシミュレーション・エンジンの開発を専門とする会社が存在する。これらの会社は物理や数学などの高等教育を受けた開発者を雇い、ミドルウェアとして出荷するためのソフトウェアを専門に開発している。

 このように、現在のゲーム開発というと、数学が得意な方、物理が得意な方、音楽が得意な方、絵が得意な方、英語が得意な方それぞれに、自分の特技を生かす参加の仕方が考えられる。特に大学などで、プログラミング言語を研究されている方、ガベージ・コレクタの研究をされている方、ユーザー・インターフェイスを研究されている方、ネットワークを研究されている方などにとって、XNAは専門知識を生かすチャンスではないかと筆者は考えている。

 その他にも、普段は仕事で.NETを扱っているという人にとっての当たり前の知識が、ゲーム開発のコミュニティにとっては非常に有益ということも起こりうる。例えばMSBuildによるビルドの自動化や、Visual Studioのカスタマイズ・拡張といったノウハウは、XNA開発にとっても非常に役立つものだろう。また、XNAのアプリケーション・モデルは、近年のDI(Dependency Injection:依存性注入)コンテナやAOP(Aspect-Oriented Programming:アスペクト指向プログラミング)を活用した開発手法をゲームに取り入れるための良いスタート地点になっているように見え、このようなフレームワーク開発の専門家にも、ぜひ参加していただければと思う。

 さて、次回はXNA Game Studio Expressベータ版のインストール・レポートと、XNAプログラミングの初歩について解説する予定だ。End of Article


 INDEX
  .NET&Windows Vistaへ広がるDirectXの世界
  第3回 .NET開発者のためのDirectX連携手法
    1.XNAとは
    2.どの技術を採用すべきか?
  3.XNA開発を始めようという方へ
 
インデックス・ページヘ  「.NET&Windows Vistaへ広がるDirectXの世界」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間