このページでは、DirectX SDKとVisualC++の設定関連の最新情報を解説しています。 2014.7.7更新

VisualC++設定に関する書籍の解説内容が古くなったときのために、最新情報を解説するのが目的です。
ここで解説しているものは、PC上でネイティブDirectXアプリを作成するためのものです。(WebアプリやWindowsストアアプリの開発環境ではありません)

2014年7月現在、VisualC++無料版のバージョンは2013Expressとなっているようです。

(注意)DirectX SDK June10から、VC++2005がサポート外になり、実際ビルドエラーを起こします。
VC++2005をメインに使っている人(VC++2005でビルドしたい人)は、Jun10にしないほうがいいでしょう。
Feb2010以前の古いSDK(下にリンクがあります)を使うことになります。(古いといってもほとんど変わりませんが)

(注意)2014年7月現在、DirectX SDKはWindows SDKに組み込まれています。そしてWindows SDKはVisualStudio2012以降をインストールすれば自動的にインストールされます。
したがいまして、開発者はVS2012(あるいはVS2013)だけをインストールすればDirectXの開発がすぐに可能です。
ただし、上記があてはまるのはDirectX11以降だけです。つまり、上記の準備だけではDirecX9やDirectX10での開発はできません
DirectX9は可読性に優れコーディングしやすいことから教育目的、あるいは特定の製品のサンプルプログラムに依然現役で使われてる人気のバージョンです。
まだまだDirectX9でコーディングする局面はあります。DirectX9,10のコーディングをするためには、やはりDirectX SDKを単体で入手することが必要になります。

 

1 コンパイラーの入手とインストール

2014年7月現在、コンパイラーの最新版はVisualC++2013バージョンです。

 

無料版

現在は、マイクロソフトのサイトで配布されていますので、ダウンロードしてください。
いろいろ種類があって戸惑うまもしれませんが、必要なのは 「Microsoft Visual Studio Express 2013 for Windows Desktop」です。

http://www.visualstudio.com/downloads/download-visual-studio-vs

「今すぐインストール」という部分をクリックし、ダウンロードを開始します。

あとは、指示に従ってインストールするだけです。

これで、Visual Studio2013Expressエディションのインストールは完了しました。

 

 

2 DirectX SDKのインストール

2014年7月現在、最新版(最後のSDK)はDirectX SDK June10です。
注意! VisualC++2005をお使いの方へ June2010からVisualC++2005のサポートが打ち切られています。実際、ビルドエラーが出て使えません。
VisualC++2005の場合、SDK Feb2010以前を使うようにしてください。

DirectX SDKはマイクロソフトのDirectXサイトからダウンロードします。

DirectX SDK june2010 ←Visual Studio2013以降の場合

DirectX SDk Feb2010  ←Visual Studio2005以前の場合

最新版のDirectX SDKは英語版である傾向があります。英語版でも全く問題ありません。そもそもDirectXの中味は英語です。

 

ダウンロードが完了すると、DXSDK_XXX.exeという実行ファイルが手に入ります。

それをダブルクリックして起動しましょう。

あとは、指示に従いながら進めていくだけです。

なお、Windows8.1以降の場合は、インストール中のダイアログが文字化けしたり、インストールが失敗したという表示がされるかもしれませんが、必要なファイルはPC上にコピーされているはずなので通常は問題ないはずです。

Windows8.1上でDirectX SDK June2010をインストールしようとしているところ。文字化けがでる。

インストールが正常に行えなかったという表示がされるかもしれませんが、PCにはちゃんとSDKの必要ファイルがコピーされているはずです。

これらのファイルがあるはずです。これらがあれば大丈夫。(もっと言えばLibとIncludeフォルダがあればOK)

 

これで、入手すべきものは全て入手しました。

しかし、まだDirectXプログラムをコーディングできるようにはなっていません。
次の「コンパイラーにSDKを知らせる設定」をする必要があります。

 

 

3 コンパイラーにSDKを認識させる設定 VisualC++2008以前用

コンパイラー(Visual C++)に、SDKの場所(パス)を、手動で登録する方法です。

メニューの、ツール→オプションを選択

 

オプションダイアログの左側でVC++ディレクトリを選択し、右側の「ディレクトリを表示するプロジェクト」から“インクルードファイル”を選択します。

 

“新しい行”ボタンを押します。(フォルダの絵のボタン)

 

パスのリストに新しい空白のパスが追加されます。

その右側にある“・・・”ボタンを押します。

 

ディレクトリ選択ダイアログが出ます。SDKがあるディレクトリに行き、

 

Includeフォルダを開きます。

“フォルダの選択”ボタンを押します。

同じ操作で、Libフォルダのパスを追加します。

「ディレクトリを表示するプロジェクト」から“ライブラリファイル”を選択します。

“新しい行”ボタンを押します。(フォルダの絵のボタン)

パスのリストに新しい空白のパスが追加されます。

その右側にある“・・・”ボタンを押します。

 

SDKのディレクトリの

 

Libフォルダを開きます。

さらにその中のx86フォルダを開きます。

“フォルダの選択”ボタンを押します。

 

これでIncludeファイルへのパス、及び、ライブラリファイルへのパスが設定されました。

DirectXプログラムをビルドできます。

 

4 コンパイラーにSDKを認識させる設定 VisualC++2010、2013以降用

適当なプロジェクトで設定します。プロジェクトは何でもいいです。そこでの設定は全てのプロジェクトに反映されます。

その前に、まず前準備をします。

(Visual Studo2010Expressの場合)
ツール → 設定  → 上級者の設定にします。(こうしないと、プロパティマネージャーを表示するメニューが出ない)

 

表示 → プロパティマネージャー で プロパティマネージャーを表示します。

 

(Visual Studio2013Expressの場合)

表示 → その他のウィンドウ → プロパティマネージャー でプロパティマネージャーを開いてください。

 

(これ以降の手順はVS2010でもVS2013でも同様なので、図はVS2010のものを使用します。)

プロパティマネージャー上で、Debug  → Microsft.Cpp.Win32.userを右クリックし、プロパティを開きます。
(Releaseにも設定したい場合は、Releaseも同様に設定してください)

 

 

 

VC++ディレクトリ → インクルードディレクトリを編集します。

 

そこに、 $(DXSDK_DIR)Include と記入します。
これは、DirectX SDKのIncludeディレクトリという意味です。

 

同様にライブラリへのパスも記入します。

 

OSが64bitの場合でも、x86としてください。(開発マシンが64ビットであるということと、ターゲット(そのアプリを実行させるPC)を64ビットにすることは違います)

 

Visual Studioを閉じるとき、次のメッセージが出ますので、はい を押して保存します。

以上です。

 

 

5 msvcr100.dll問題

VisualC++2010Expressでは、なにもしないでそのままビルドすると、msvcr100.dllというdllに依存したexeファイルを生成してしまいます。

VisualC++2010をインストールしたPCでは、問題ないのですが、そうではないPC上でそのexeを実行すると、msvcr100.dllが無い旨のメッセージが出て実行できません。

これを解消するためには、プロジェクトのプロパティダイアログで、C/C++→コード生成→ランタイムライブラリ→マルチスレッド(/MT)あるいはマルチスレッドデバッグ(MTd)にしてください。
(名前にDLLが付いているほうは、最終exeファイルがdllに依存してしまいます。)