DirectX Win10

Win10 Template

DirectX Windows10 のテンプレートプロジェクトです。

前田稔(Maeda Minoru)の超初心者のプログラム入門

プロジェクトの構築

  1. DirectX Windows10 のプロジェクトを構築する方法です。
    Windows10 でストアアプリのプログラムを作成するには、ストアアプリに対応した専用の開発ソフトが必要です。
    2015/10/08 以降は Windows10 & Visual Studio Community 2015 の環境で開発します。
    ストアアプリの DirectX は、C言語(C++)で作成します。
    Blend for Visual Studio 2015 には、規定値で DirectX のプロジェクト(アプリ)が登録されていません。
    DirectX のプロジェクトを構築するときは Visual Studio 2015(Blend では無い)を起動して下さい。
  2. [テンプレート][Visual C++]から DirectX アプリを選びます。
    場所はプロジェクトを作成するフォルダーを選択して下さい。
    今回は C:\DATA\DirectX\Windows10\Template\ のフォルダーに幾つかのアプリを作成します。
    フォルダーに複数のアプリを格納するときは[ソリユーションのディレクトリを作成]をチェックするのがお勧めです。

  3. [OK] をクリックすると、プロジェクトが構築されてデザイン画面が表示されます。
    構築直後は赤色の下線でエラーが指摘されていますが、ヘッダーファイルの読み込みが完了するとエラーは消えます。
    または、メニューバーの[ビルド]からコンパイルするとエラーは消えます。
    メニューの[デバッグ]から[デバッグ開始]、または[緑色の右三角アイコン]をクリックするとコンパイル&実行が行われます。
  4. Windows 画面の「スタート」ボタンから[すべてのアプリ]を選ぶと今作製したアプリが登録されています。
    追加されたアイコンをクリックすると先ほど実行した画面が表示されます。
    必要がなければ右クリックからアンインストールして下さい。
  5. プロジェクトを作成したフォルダーにもアプリ(App1 など)のフォルダーが作成されています。
    必要がなければフォルダーごと削除して下さい。
  6. プロジェクトを残しておく場合でも次のファイルは削除することが可能で *.sln から起動すると再構築されます。
    また場合によっては、次のファイルも削除することが出来ます。
    削除した状態で *.sln をダブルクリックすると Blend for Visual Studio 2015 が起動します。
    [緑色の右三角アイコン]をクリックするとコンパイル&実行が行われます。
    警告が表示されることがありますが、正常に実行されます。
  7. 一般的な DirectX の場合は DirectX 11 アプリ(ユニバーサル Windows)を選びます。
    Button や TextBox などツールを貼り付けるときは XAML のプロジェクトを選びます。
    携帯に関係するなら WindowsPhone\ が含まれるプロジェクトを選びます。
    Windows Phone は携帯端末(スマホ)向けの開発環境のようです。

DirectX Windows10 テンプレート

  1. DirectX 11 アプリ(ユニバーサル Windows)を選びます。
    名前は規定値で App1 になります。
    [緑色の右三角アイコン]をクリックするとコンパイル&実行が行われます。
    カラーキューブが回転しながら描画され、FPS が表示されます。
    XAML が無い分、プロジェクトは非常にすっきりしています。
    ☆私のページでは、マウスやキーを使わない場合はこのプロジェクトを使っています。
  2. DirectX 12 アプリ(ユニバーサル Windows)を選びます。
    App1 は使われているので、名前は規定値で App2 になります。
    [緑色の右三角アイコン]をクリックするとコンパイル&実行が行われます。
    カラーキューブだけが回転しながら描画されます。
    XAML が無い分、プロジェクトは非常にすっきりしています。
    見かけは DirectX 11 アプリと変わりませんが、プログラム的には相当な違いがあるようです。
  3. DirectX 11 アプリ(ユニバーサル Windows 8.1)を選びます。
    名前は規定値で App3 になります。
    [緑色の右三角アイコン]をクリックするとコンパイル&実行が行われます。
    カラーキューブが回転しながら描画され、FPS が表示されます。
    App1.Shared\, App1.Windows\, App1.WindowsPhone\ のフォルダーが作成されています。
  4. DirectX 11 および XAML アプリ(ユニバーサル Windows)を選びます。
    名前は規定値で App4 になります。
    [緑色の右三角アイコン]をクリックするとコンパイル&実行が行われます。
    カラーキューブが回転しながら描画され、FPS が表示され、TextBox に XAML! が表示されます。
    XAML アプリには、最初から PointerEvent のハンドラが組み込まれていてマウスの操作でY軸回転します。
    ☆私のページでは、マウスやキーを使う場合はこのプロジェクトを使っています。
  5. DirectX 11 および XAML アプリ(ユニバーサル Windows 8.1)を選びます。
    名前は規定値で DirectXApp1 になります。
    [緑色の右三角アイコン]をクリックするとコンパイル&実行が行われます。
    カラーキューブが回転しながら描画され、FPS が表示され、TextBox に XAML! が表示されます。
    Shared\, Windows\, WindowsPhone\ のフォルダーが作成されています。

X-FILE を組み込む

  1. X-FILE の仕様は多種多様で、私のプログラムでは描画出来ない場合もあるので注意して下さい。
    X-FILE は大きく分けて次のモデルがあります。
  2. モデルの種類によってシェーダーを使い分けて下さい。
    自動生成で描画されるカラーキューブは「頂点座標+カラー」のモデルです。
    シェーダーは Windows10 Shader を参照して下さい。
  3. X-FILE(3Dモデル)は基本的にプロジェクトに組み込みます。
    App1 のフォルダーに格納してソリユーションエクスプローラで右クリックして[追加][既存の項目]からプロジェクトに追加します。
    X-FILE をプロジェクトに追加したときは、X-FILE を右クリックしてプロパティからコンテンツを True に設定して下さい。
    画像ファイルは自動的にコンテンツに設定されるのですが、X-FILE は手作業で設定しなければならないようです。
    HD(ハードディスク)などから直接入力する方法は File Picker を参照して下さい。
  4. X-FILE を扱うときは、次のファイルを Content\ のフォルダーに格納します。
    ソリユーションエクスプローラで Content\ を右クリックして[追加][既存の項目]からプロジェクトに追加します。
    BasicMath, BasicReaderWriter は Windows10 DirectX Library を参照して下さい。
    Load_X.h(.cpp) などは X-FILE を解析する Class で、私のページに掲載しています。
    ファイル 説明
    Content\Load_X.h Load_X Class の Header File
    Content\Load_X.cpp Load_X Class の Program File
    Content\BasicMath.h DirectX の基本データ宣言
    Content\BasicReaderWriter.h DirectX 基本入出力の Header File
    Content\BasicReaderWriter.cpp DirectX 基本入出力の Program File
    Content\ShaderStructures.h Shader の Header File
    Content\SamplePixelShader.hlsl Pixel Shader
    Content\SampleVertexShader.hlslVertex Shader
  5. テクスチャモデルを扱うときは TextureLoader を Content\ のフォルダーに格納して下さい。
    TextureLoader は Windows10 Shader を参照して下さい。
    TextureLoader から BasicReaderWriter を使っているので、合わせて格納して下さい。
    XLoader.h(.cpp) などは X-FILE を解析する Class で、私のページに掲載しています。
    ファイル 説明
    Content\XLoader.h XLoader Class の Header File
    Content\XLoader.cpp XLoader Class の Program File
    Content\TextureLoader.h TextureLoader の Header File
    Content\TextureLoader.cppTextureLoader の Program File
  6. Camera でモデルを操作するときは MyCamera を組み込んで下さい。
    Ver-1.2 は Win10 Pair を Ver-2.0 は W10 Bone 2 を参照して下さい。
    ファイル 説明
    Content\MyCamera.h MyCamera Class の Header File
    Content\MyCamera.cppMyCamera Class の Program File

【NOTE】

  1. 以前は[緑色の右三角アイコン]をクリックすると[コンパイル&実行]が行われていたのですが、最近(2016/2)は最後にコンパイルしたプログラムの実行だけが行われるようです。
    ソースファイルを更新した状態で緑色の右三角アイコンをクリックすると、更新前の状態で実行されます。
    更新したときは、メニューから[ビルド/ソリューションのリビルド]を実行してから、緑色の右三角アイコンをクリックして下さい。
  2. Visual Studio で開発しているとウインドウの配置が乱れたりプロパティが表示されなくなることがあります。
    そのようなときは、ツールバーから[ウインドウ][ウインドウレイアウトのリセット]で既定の配置に戻すことが出来ます。
  3. 次のメッセージが表示されたときは、メニューから[ビルド][App1 の配置]を実行して下さい。
    このメッセージは意味不明で (^_^;) 、要するにコンパイルをやり直せと言うことでしょうか?
    [ビルド/ソリューションのリビルド]を実行してもOKでした。

超初心者のプログラム入門(DirectX Store)