赤宿 = Red Inn

素人の試行錯誤と2Dゲームプログラミング

Getting Started

To Hello World

 4万強円のWindows PCを買った。スピーカと画面が悪いが、その他のすべては悪くない。

ダウンロード

  • Visual Studio
    PCL関係のソフトやそれっぽいソフトと一緒にインストールしておく(30GBほどになった)。なければPCL関係のプロジェクトを読み込めず、エラーが出る。VSをアンインストールするとPCL関係のツールも消えるため注意。VSとは分けてインストールすることもできるらしい。

  • Xamarin Studio(MonoDevelop)
    Macでも動くIDE。MS Visual StudioなどでもOK。

  • MonoGame
    低レベルのマルチプラットフォームフレームワークver.3.5をダウンロードする。今現在のNezはver.3.6に対応していない(MonoGameの一部APIが変わったため)。ver.3.6のMonoGameをインストールしていたり、間違ってPCLのMonoGameを参照していると、ビルドは成功するが、実行時にエラーが出る。〇〇が無い、〇〇がnullだ、など間接的なエラーとなる。

  • Nez
    海外の個人が作った2Dゲーム用フレームワーク(Docs)。MonoGame/FNAのPCLであり、MonoGame/FNAが対応しているプラットフォームで動く。

Nez-Samplesをダウンロードする場合

Nez-Samples > Setupの指示に従う。

自分のプロジェクトを作る場合

MonoGameの設定

 Xamarinを起動後、ホームでツール > アドイン を選択して、MonoGameのアドインを検索して加える。これでMonoGameのプロジェクトテンプレートが手に入る。新規プロジェクトでは、MonoGame Cross Platform Project(=OpenGL版)を選ぶ。(Windows版、すなわちDirectX版にはNezが対応していないため注意。実行時にエラーが出る)。そのまま実行して青い画面のウィンドウが出れば、MonoGameの設定は成功している。

Nezの設定

 Nezをコピーして、自分のソリューションに参照を加える(Nez.Portable)。Nez.PipelineToolは実際のアプリでは使用しないため、他プロジェクトからは参照しない。

Pipeline ToolのSetup(必要ならば)

 Docsより

open the Pipeline Tool by double-clicking your Content.mgcb file and add references to PipelineImporter.dll, Ionic.ZLib.dll, Newtonsoft.Json.dll and Nez.dll.

 これはNez - Getting Started - YouTubeの16:10からで解説されている。(拡大すればよく見える)

Be sure to set the Build Action to Content and enable the “Copy to output directory” property so they get copied into your compiled game.

Xamarinさん

Nez.Samplesがdebugできない?

 Run without Debuggingなら動くが、デバッグで実行するとエラーが出る。調査中。

T4 Templteの利用

 add > new file > T4 Template で追加したファイルに、NezのT4テンプレート(.tt)の内容をコピー。右クリックの Tools > Process T4 Templateでファイルを生成してくれる。

右クリックの add files からNezのt4テンプレートファイルを加えても動作しない。このとき、ファイル名の左にプラスマークが表示されている。T4テンプレートのファイルとしてプロジェクトに認識されていないようだが、どうすればいいのか…。

 T4テンプレートで使われるデフォルトのパスはcsprojファイルと同じ階層から始まっている。windowsならば"../"で一階層前に戻ることができるため、パスを書き換えてフォルダ分けできる。 未調査: T4の更新の自動化?

Hello World

 Nez-Samplesを参考にしてゲームを作る。さあ始まりだ!