blog

Cocos Creatorのプロジェクト構造を理解するには、これを読めば十分だ!

以下では、各フォルダの機能について説明します。 assetsは、ゲームのローカルリソース、スクリプト、サードパーティライブラリファイルのすべてを保持するために使用されます。assetsは、プロジェクト...

May 3, 2020 · 6 min. read
シェア

I. プロジェクトのフォルダ構造

Cocos Creatorのプロジェクトを初めて作って開くと、開発者のプロジェクト・フォルダは以下のような構造になっています:

各フォルダの機能は以下の通りです。

リソースフォルダ

assetsは、ゲーム内のすべてのローカルリソース、スクリプト、サードパーティライブラリファイルを保持するために使用されます。assetsディレクトリの内容のみがエクスプローラーに表示されます。assets内の各ファイルは、プロジェクトにインポートされると同じ名前の.metaファイルが生成され、対応するリソース設定とインデックス情報を保存するために使用されます。.meta ファイルは、バージョン管理システムに提出する必要があります。リソース管理に関する考慮事項 -- メタファイル を参照してください。

TexturePackerの.tpsファイルやPhotoshopの.psdファイルなど、いくつかのサードパーティツールで生成されたプロジェクトやデザインのソースファイルは、オプションでアセット外で管理することができます。

リソースライブラリ

ライブラリは、アセットからリソースをインポートすることで作成され、ファイルの構造やリソースのフォーマットは、最終的なゲームリリースに必要な形に処理されます。ライブラリが失われたり破損した場合は、ライブラリフォルダ全体を削除してプロジェクトを開くだけで、ライブラリが再生成されます。

ローカル設定

ローカルフォルダには、エディタパネルのレイアウト、ウィンドウのサイズ、場所など、プロジェクトのローカル設定に関する情報が含まれています。開発者はこのフォルダの中身を気にする必要はありません。

拡張プラグインフォルダ

packagesフォルダは、このプロジェクトのカスタム拡張プラグインを保持するために使用されます。拡張機能を手動でインストールする必要がある場合、このフォルダを手動で作成できます。拡張機能をアンインストールするには、packages内の対応するフォルダを削除します。

プロジェクトの設定

ビルドとパブリッシュ]メニューのパッケージ名、シナリオ、プラットフォームの選択など、プロジェクト関連の設定を保持します。

一時フォルダ

tempはCocos Creatorのローカル・テンポラリ・ファイルをキャッシュするテンポラリ・フォルダ。このフォルダはCocos Creatorを閉じた後に手動で削除できるので、開発者はその中身を気にする必要はありません。

project.json

project.jsonファイルはassetsフォルダとともに、Cocos Creatorプロジェクトの正当性を確認する役割を果たし、両方を含むフォルダだけがCocos Creatorプロジェクトとして開くことができます。開発者はフォルダの中身を気にする必要はありません。

構築目標

メインメニューのProject -> Build Publishingを使用してプロジェクトをパブリッシュした後... デフォルトのパブリッシュパスを使用してプロジェクトをパブリッシュした後、エディタはプロジェクトパスの下にビルドディレクトリを作成し、ターゲットプラットフォーム用のすべてのビルドを保存します。

バージョン管理

Cocos Creatorが新しいプロジェクトを作成するとき、gitリポジトリにコミットすべきでないファイルを除外するための.gitignoreファイルが自動的に生成されます。別のバージョン・コントロール・システムを使用している場合や、プロジェクトを別の場所にコミットする必要がある場合は、アセット、パッケージ、設定、project.json、その他手動で追加した関連ファイルのみをコミットするように注意する必要があります。

リソース管理に関する考慮事項 - メタファイル

Creatorが何を行い、どのようにメタ ファイルを生成するかを理解することで、リソースの競合、ファイルが見つからない、コンポーネント プロパティが見つからないなど、マルチユーザー開発でよく発生する問題を解決することができます。メタ ファイルとは何でしょうか。それを知る方法は次のとおりです。

meta ファイルの役割

まず、シナリオの中でメタ・ファイルがどのように見えるかを見てみましょう:

プレハブ用のメタ・ファイルはシーンと同じです。pngイメージ用のメタ・ファイルはより多くの情報を持っており、基本的なverとuuidの他に、イメージの幅、高さ、オフセット、9コマグリッドなどが記録されています。metaファイルには、基本的なverとuuidの他に、イメージの幅と高さ、オフセット、9コマなどが記録されています。各ファイルにユニークなidが割り当てられ、ギャラリーには複数のidが生成されます。このことから、Creatorエンジンでは、ファイルは単にパス+ファイル名で識別されるのではなく、uuidで参照されることがわかります。そのため、エディタのリソース管理でファイルを削除したり移動したりすることができます。

meta ファイル更新のタイミング

Creatorは以下の方法でメタ・ファイルを生成します:

1、プロジェクトを開くプロジェクトを開くと、Creatorは、最初のassetsディレクトリをスキャンし、どのファイルがまだメタファイルを持っていない場合は、この時点で生成されます。

2、リソースを更新すると、メタ・ファイルも更新されます:

3.メタファイルエラーいくつかの状況とメタファイルエラーの次の分析への解決策は、いくつかの可能な状況。 uuidの競合uuidはグローバルに一意であり、競合の結果、同じuuidを持つ別のファイルでなければなりませんが、一度この問題が発生すると、Cocos Creator Explorerのディレクトリ構造につながる完全にロードされません。次の図のように、このような状況は、おそらく冷や汗をかくでしょう:

プロンプトから、競合するuuid文字列を見ることができます。次に、オペレーティングシステムのファイルマネージャまたはコードエディタを開き、このuuidを検索します:

この問題は、Creator エディタを終了し、メタ ファイルの 1 つを削除してから Creator エディタを再度開くことで解決できます。この方法で問題を解決できますが、エディタで参照されているリソースは失われるため、再度編集または再設定する必要があります。バージョン管理ツールを使用してメタファイルを復元するのが最善です。この問題の一般的な原因は2つあります。オペレーティングシステムのファイルマネージャーでファイルを移動する際、誤ってカット&ペーストをコピー&ペーストに変更し、同時にメタファイルをコピーしてしまった場合です。その結果、2つの同じメタ・ファイルが同時にプロジェクトに表示されます。複数の人と共同作業をしているとき、バージョン管理ツールからリソースを更新するときに、他の人が生成したuuidと自分のコンピュータのファイルが生成したuuidが同じということが起こりますが、これは非常にまれなことです。一般的に、uuidの衝突の発生を最小限に抑えるには、エンジンのリソース管理ツールでファイルを追加したり移動したりするのが最善です。

uuid

また、uuidが変更され、古いuuidに対応するリソースが見つからない場合もあります。この場合、編集に使用したインターフェースには、リソース、イメージ、そしておそらくコンポーネントのプロパティがなくなります。

古い uuid に対応するリソースが見つからない場合、Creator がシーンファイル名、ノードパス、コンポーネント、uuid などについて非常に詳細な警告メッセージを表示することをコンソールで確認できます。この警告メッセージを見れば、エラーの場所をすぐに特定できます。なぜこのようなことが起こるのでしょうか?ある人がプロジェクトに新しいリソースを追加し、メタ ファイルを生成するためにエディタ インターフェイスに切り替えるのを忘れ、新しいファイルをバージョン管理にコミットします。その後、別の人が提出したリソースを更新し、それを編集するためにエディターに切り替えます。この時点でCreatorは、新しいリソースにメタファイルがないことを確認し、すぐにメタファイルを生成します。最初の人がエディタに切り替えると、エディタもメタファイルを生成するので、2人のコンピュータには同じファイルがありますが、生成されたメタファイルのuuidは異なります。この場合、後からリソースを投稿したり更新したりする人は必ず競合に遭遇し、その理由を知らずに競合の解決を強いられると、上記のような問題が発生します。このエラーのワークフローを以下のタイミング図に示します:

というのも、最初のA学生がメタ・ファイルを生成して提出するのを忘れてしまい、その後、他の全員がプロジェクトを編集したのですが、全員が異なるuuidを生成したため、無限リソース・エラーに陥り、何かを編集し、更新を提出すると、また競合が発生したのです。

この問題を解決するために、次の点に注意してください: 提出する前に、新しいファイルがあるかどうかをチェックするために、新しいファイルがあるかどうか、メタファイルがあるかどうかに注意してください、一緒に提出する必要があります。 プルファイル、新しいファイルがあるかどうかに注意してください、ペアでメタファイルがあるかどうか、ない場合は、ファイルを提出する学生に思い出させる、一緒に提出されたメタファイル。 提出するときに、唯一の新しいメタファイルが見つかった場合は、メタファイルは自分で生成する必要があります、使用するリソースに対応するメタファイルかどうかに注意する必要があります。もしメタ・ファイルがない場合、提出する学生にメタ・ファイルを一緒に提出するように注意してください。 提出する際、もし新しいメタ・ファイルしかないことがわかった場合、メタ・ファイルは自分で生成しなければならず、このメタ・ファイルに対応するリソースを使用したかどうかに注意する必要があります。もし使用していないのであれば、そのメタ・ファイルを最も早い提出者に提出してください。決してメタ・ファイルを提出しないでください。以上の点に注意すれば、基本的にmetaファイルのuuid変更によるプロジェクトエラーをなくすことができます。

**Summary:**メタファイルはCreatorがリソース管理に使用する重要なツールですが、複数人での共同開発では気をつけないとリソースエラーが発生しやすくなります。この問題を解決するためには、メタファイルの生成メカニズムやコンフリクトの原因を理解するだけでなく、リソースの投入プロセスを標準化する必要があります。

Read next