プロジェクト構造について

このトピックでは、Stingray のプロジェクトの基本的な編成方法について説明します。

プロジェクト ディレクトリ: ソールとコンパイル データ

新しいプロジェクトを作成すると、Stingray はディスク上の指定された場所にプロジェクトと同じ名前のフォルダを作成します。 この最上位 フォルダには、<プロジェクト名><プロジェクト名>_data<プロジェクト名>_wwise という一連のプロジェクト フォルダが格納されています。

最上位フォルダの <プロジェクト名> フォルダはプロジェクトのソース フォルダです。書き出されたモデル、テクスチャ、スクリプトなど、ゲームの作成に必要なすべてのファイルがこのフォルダに格納されます。Stingray のツールとエディタはいずれもこのソース ディレクトリで読み込みと書き出しを行います。

もうひとつの <プロジェクト名>_data フォルダには、ソース データが最適化されたバイナリ形式で保存されます。このデータはゲームのターゲット プラットフォームでランタイムで使用されます。Stingray エディタでの作業中や、エディタからゲームを実行する際に、Windows 向けにコンパイルされたデータが自動的に更新されます。

Stingray では、3 番目のフォルダ(<プロジェクト名>_wwise)も作成されます。このフォルダは Wwise を使用してオーディオ コンテンツを作成するために設定されます(「オーディオを操作する」を参照してください)。

Stingray は、拡張子が stingray_project の Stingray プロジェクト ファイルも作成します。このファイルには、Stingray のバージョン、ロードされた既定のテンプレートとレベル、Wwise プロジェクトの設定と移行の設定など、プロジェクトの情報が格納されています。

他のユーザとプロジェクトを共有する場合、または Git や SVN などのバージョン管理システムにプロジェクトをチェックインする場合、通常はソース ディレクトリと _wwise ディレクトリしか使用しません。コンパイルされたデータは必ずソース ディレクトリから再生成されるため、再配布したり、ソース管理システムにチェックインする必要はありません。「バージョン管理システムを使用する」も参照してください。

ゲームコンテンツを編成する

Stingray エンジンでは、プロジェクトのリソースの編成や構造についての要件はありません。ゲーム コンテンツは、ソース ディレクトリ内で任意のフォルダ構造に編成することができます。リソースの編成はプロジェクトの規則に応じて自由に行うことができます。

たとえば、プロジェクトをリソース タイプ別に編成することができます。この場合、すべてのテクスチャを 1 つのフォルダに保存し、すべてのアニメーションを 2 番目のフォルダに保存し、全ユニットを 3 番目のフォルダに保存することになります。また、ソース データをゲーム オブジェクト別に編成することもできます。この場合、特定のキャラクタ、車両、あるいは建物に関連するもの(ユニット、テクスチャ、アニメーション、スクリプトなど)をすべて同じフォルダに保存することになります。また、データをレベル別に編成することもできます。この選択は自由にできます。

その後、リソース(同時に保存、ロード、ロード解除するデータのチャンク)をパッケージにバンドルします。この作業は、ソース フォルダのリソース ファイルのレイアウトにかかわらず行うことができます。詳細については、「コンテンツとリソースを管理する」を参照してください。

唯一の規則として、プロジェクト ディレクトリのルートには必ず settings.ini ファイルがなければなりません。このファイルにはゲームの起動時に必要な基本情報が格納されています。詳細については、下記を参照してください。

ただし、編集ツールやアセットの読み込みプロセスでは、プロジェクト フォルダ内の既定の場所を使用することがあります。たとえば、Wwise のオーディオ リソースは既定では wwise サブフォルダに格納されます。同様に、Scaleform Studio プロジェクトは既定では s2d_projects サブフォルダに配置されます。

プロジェクトのソース ディレクトリの既定の構造

Stingray テンプレートを使用して新しいプロジェクトを開始する場合、contentscript の 2 つのサブディレクトリが作成されます。

コンテンツ ディレクトリ

content ディレクトリには、アート、テクスチャ、レベルなどの、テンプレートで使用するすべてのコンテンツ用のサブフォルダがあります。

ファイル(リソース)の種類の詳細については、「リソースについて」を参照してください。

スクリプト用ディレクトリ

script フォルダは、プロジェクトのゲームプレイを作成するために用意したカスタムのスクリプトやフロー ノードを保存する場所として便利です。

Stingray でゲームプレイ用の Lua スクリプトを使用する方法については、「Lua でスクリプトを作成する」を参照してください。

プロジェクトのソース ディレクトリ内のファイル

各プロジェクトのソースファイルには、EditorSettings.configboot.packageglobal.physics_propertiessettings.ini の各ファイルがあります。

boot.package

拡張子が .package のリソース ファイルは、リソース パッケージ(ゲームの最終ビルドで一緒に保存、ロード、ロード解除される関連したリソースの集合)を指定します。

Stingray に付属のテンプレートに基づいて新しいプロジェクトを開始すると、プロジェクトは(settings.ini ファイルで)起動時にこの boot.package ファイルをロードするよう事前設定されます。このパッケージ ファイルは、プロジェクトの実行時またはデプロイ時に、プロジェクト内のどのリソースをエンジンにロードするかを決定します。

既定では、このパッケージにはそのプロジェクトで表示されているすべてのリソースが含まれています。プロジェクトにさらにコンテンツを追加するときには、その新しいコンテンツもブート パッケージの対象になっていることを確認する必要があります。パッケージ ファイルへの追加方法の詳細については、「リソース パッケージを定義する」を参照してください。

最終的には、ゲーム コンテンツを、必要に応じてロードまたはロード解除できるように、複数のパッケージに分割することができます。詳細については、「コンテンツとリソースを管理する」を参照してください。

EditorSettings.config

このファイルには、Stingray エディタでプロジェクトを編集する際に設定したカスタム環境設定が記録されます。

global.physics_properties

このファイルには、物理サブシステムのグローバル環境設定が記録されています。詳細については、「グローバル物理プロパティ」を参照してください。

settings.ini

このファイルには、レンダリング設定や起動パッケージなど、エンジンの動作を制御するための、ユーザーが編集可能な各種の設定が記録されています。このファイルは、常にゲーム プロジェクトのルートになければなりません。

このファイルで指定できる設定の詳細については、「Stingray エンジンの settings.ini ファイルのリファレンス」を参照してください。

project.settings

このファイルは、旧バージョンの Stingray からプロジェクトを移行しているときに作成され、移行したプロジェクトのプロジェクト設定が記録されます。