各 Stingray プロジェクトは、ソース フォルダに読み込まれて作成されたリソースだけでなく、事前に設定された「コア」リソースのコレクションも継承します。これらのコア リソースは Stingray と一緒にインストールされ、Stingray インストール フォルダ内の core フォルダに保管されています。ゲーム オブジェクトをコンパイルすると、Stingray エンジンは core フォルダからコンテンツを自動的に選択し、ファイルをコンパイルして、プロジェクトのコンパイル済みデータに追加します。
この処理が行われない場合、ゲーム エンジンはプロジェクト内の他のデータ リソースと同様にコア リソースを処理します。ランタイムでゲーム内でいずれかのコア リソースを使用する場合は、これらがパッケージ定義に含まれていることを確認する必要があります。これは一般に、ブート パッケージ内で実行されます。
多くのコア リソースは Stingray エディタのサポートを主な目的としていますが、最終的なゲームで必要になる可能性のあるものが多数あります。たとえば、Appkit やその他のプラグイン(Wwise、Gameware Navigation、HumanIK など)では Lua スクリプトが必要になることがあります。Stingray プロジェクト テンプレートに付属の boot.package をモデルとして使用します。
コア リソースには、次のような、さまざまな目的を持つファイルが含まれています。
既定では、Asset Browser にはプロジェクト フォルダのみが表示されます。コア リソースを参照して、開くことができると便利なことがあります。たとえば、Appkit を使用するプロジェクトの Lua コードを操作している場合は、Appkit および SimpleProject コードを参照する機能が必要になることがあります。
コア リソースを表示するには、Asset Browser で環境設定アイコン をクリックし、Show Mapped Folders オプションを有効にします。
コア リソースを修正またはオーバーライドして、独自のプロジェクト用にカスタマイズすることが必要な場合があります。カスタマイズする際は、コントロールと簡便性がトレードオフの関係になります。カスタマイズすると、ゲームの作成に関係する多数のコンテンツを直接コントロールできるようになります。その一方で、新しいバージョンの Stingray にアップグレードしたときに複雑さが増す可能性があります。これは、Stingray のバージョンごとに独自のコア リソース セットが付属しているためです。
コア リソースは次の 2 つの方法でオーバーライドできます。
Stingray インストール フォルダ内のフォルダを単に修正します。ここで行った変更は、すべての Stingray プロジェクトに適用されます。
ただし、インストールする Stingray の新しいバージョンごとに独自のコア リソース セットが付属します。したがって、新しいバージョンの Stingray を使用するときに変更が考慮されるようにするには、新しいバージョンの Stingray をインストールした後で、新しいコア リソースに対して変更をやり直します。
プロジェクトに core フォルダを作成できます。このフォルダに追加したすべてのリソースは、インストール フォルダ内の core フォルダから取得された同じ名前のリソースをオーバーライドします。プロジェクト用にオーバーライドする任意のリソースを、インストール フォルダ内の core フォルダから、プロジェクト内の core フォルダにコピーして、必要に応じて修正できます。
ただし、新しいバージョンの各 Stingray はバグを修正したり、新機能を追加したりするために、コア リソースに変更を加えることがあります。この方法を使用して既定の core リソースの一部(またはすべて)をオーバーライドした場合、Stingray の新しいバージョンをインストールするたびに、最新のコア リソースをチェックして、変更を加えてもまだ機能することを確認する必要があります。既定のコア リソースから取得された最新の変更内容を、プロジェクト内でオーバーライドしたリソースに合成する必要があります。
特定の Lua コードの修正またはオーバーライドのみを行う場合、コア リソースの修正は必要ない可能性があります。代わりに、独自の Lua コード内の修正が必要な Lua オブジェクトまたは関数を定義し直すことができます。詳細については、「Appkit をカスタマイズする」を参照してください。