arveltのソフトウェア技術メモ

Arvelt's software technology memo

2013年にDirectXでゲームを作りたいときに知っておくべきこと

2013年9月現在は、Windowsの過渡期であるためか開発環境がややこしいことになっている。注意することをまとめたメモ。


1. Visual studio 2012で使用する環境の構築。

  • オフィシャルページで配布されているDirectXデモプロジェクトをVS上で開くには、Windows8 上でVisualStudioExpressForWindows8を使用するか、有料のPro以降のエディションを使用する必要がある。


まず、マイクロソフトの公式のページを見る。

DirectX ゲーム開発とサンプルのチュートリアル (Windows)
http://msdn.microsoft.com/ja-jp/library/windows/apps/hh465149.aspx

このページを辿って行くと、DirectXゲームのでもプロジェクトをダウンロードすることができる。しかし、VisualStudio2012 Express For Desktopをダウンロードしてこのプロジェクトを開こうとしても開くことはできない。それは仕様であり下記でアナウンスされている。
http://support.microsoft.com/kb/2756246/ja


よって、デモプロジェクトを開くためには、VisualStudio2012 Express for Windows8か、有料のPro以降のVisualStudioのエディションが必要なる。

デモプロジェクトを開く環境が用意できるのであれば、公式のチュートリアルを粛々と進めていけば問題無い。ただし、Windows8ストア向けアプリのための話なのか、DirectXの機能そのものの話なのか、ゲームのロジックに関する話なのか、なんの話題なのかに気をつけること。


2.DirectXについて
DirectX 入門」とかでぐぐると出てくる情報は、ほとんどがDirectX8やDirectX9をもとに書かれている。そしてDirectX9以前のAPIは、Windows8で、WindowSDKとして統合されたのだと思われる。
例えば、Direct9で必要な”d3d9.h”のヘッダファイルはWindlwsSDKはあったが、同様に必要なはずの”d3dx9.h”のヘッダファイルは含まれていなかった。
以前のDirectSDKはWindowsSDKに統合され、なくなっているものもある。ということなのだろう。


3.じゃあどうすればいいか?

  • DirectXSDKを別途インストールすればDirecx9のAPIが使える
  • 最新のDirectX11で3Dゴリゴリやりたい場合は、Pro以降のエディションを購入する。もしくはWindos8上でVSExpressを使う。ただしその場合はWindows8用ストアアプリしか作れない。

例えば2Dゲームを作りたいならDirectX9の機能で十分。かつての名著なども安く手に入る。過去のAPIを使うためには、マイクロソフトのUSサイトからDirectXSDKをダウンロードして、追加のインクルードファイルとしてVSに認識させればいい。

Download DirectX Software Development Kit from Official Microsoft Download Center http://www.microsoft.com/en-us/download/details.aspx?id=6812

これをインストールすれば、”d3d9.h”や”d3dx9.h”などをインクルードできるようになるので、開発が行える。