ue4-style-guide/README.jp.md at master · akenatsu/ue4-style-guide · GitHub
上記の記事が論理的かつ包括的に解説していて参考になる。
絶対に正しいフォルダー管理ルールはなく、かなり人やプロジェクトによって分かれるので、各自で自分が使いやすいように決める。
もくじ
命名規則
単語最初だけ大文字・スペースなし
- Prefix_BaseAssetName_Variant_Suffix
あらゆるデータ名は「単語の最初1文字だけ大文字・スペースなし」として命名する。
英語のみを使用し、日本語や絵文字・特殊記号などは使わない。
データにプレフィックスを付ける
ブループリント:BP_、マテリアル:M_、テクスチャ:T_など、ファイルタイプによって最初に特定の文字を付けておく。
こうすることで、名前だけでどのようなデータなのかがわかりやすい。
Unreal Engine プロジェクトにおけるアセット命名規則の推奨事項。 | Unreal Engine 5.0 ドキュメンテーション | Epic Developer Community
- 一般
- HDRI HDR_
- マテリアル M_
- マテリアル インスタンス MI_
- 物理アセット PHYS_
- 物理マテリアル PM_
- ポストプロセス マテリアル PPM_
- スケルタルメッシュ SK_
- スタティックメッシュ SM_
- テクスチャ T_
- OCIO プロファイル OCIO_
- ブループリント
- Actor コンポーネント AC_
- アニメーション ブループリント ABP_
- ブループリント インターフェース BI_
- ブループリント BP_
- カーブ テーブル CT_
- データ テーブル DT_
- 列挙型 E_
- 構造体 F_
- ウィジェット ブループリント WBP_
- パーティクル エフェクト
- Niagara エミッタ FXE_
- Niagara システム FXS_
- Niagara 関数 FXF_
- スケルタルメッシュ アニメーション
- リグ Rig_
- スケルトン SKEL_
- モンタージュ AM_
- アニメーション シーケンス AS_
- ブレンド スペース BS_
- ICVFX
- NDisplay コンフィギュレーション NDC_
- アニメーション
- レベル シーケンス LS_
- シーケンサー エディット EDIT_
- メディア
- メディア ソース MS_
- メディア出力 MO_
- メディア プレーヤー MP_
- メディア プロファイル MPR_
- その他
- レベル スナップショット SNAP_
- リモートコントロール プリセット RCP_
より扱いやすい命名規則
- Bool値
- Bool値は形容詞を付ける。
- Bool値には、"b"を付ける。
(Bool型であるとわかりやすくするため) - Bool値には、"Is"は付けない。
(Isは関数用としてすでに使われているので) - 複雑な複数の状態を表したい場合はEnum(列挙型)にする。
Enumなら武器の射撃中・リロード中・切り替え中など複数の状態を表現できる。
- 冗長な名前はつけない。
- 例として、プレイヤーの変数なら"PlayerScore"ではなく"Score"にする。
- AssetやDataのような名前はつけない。
すべてのアセットはAssetである。
- 全ての関数は動詞にする。
- 関数は全て何かを実行する処理であるため。
- Boolを返す関数にはIsを付ける。
- 例えば死んでいるかどうかを確認する関数なら、"IsDead"とする。
- 持っているなら"Has"
- 前の状態を確認するなら"Was"
- 可能かどうかなら"Can"
フォルダー管理
大分類について
フォルダーは、背景・キャラ・武器・マップ・エフェクト・配置アイテム・ゲームのコアデータのように大分類する。
- 背景・キャラ・武器・マップ・エフェクト・配置アイテム
- Common
その大分類内のどのデータでも共通のものは、そのフォルダ内の"Common"に入れる。
- Common
- コア
- キャラ・武器・配置アイテム・エンジン・ゲームモードなどの、ゲームを動作させるコアデータ。
- MaterialLibrary
- 共有マテリアルを置く。
データタイプごとには分類しない
メッシュ・テクスチャ・マテリアルなどでは分類しない。
データタイプごとはコンテンツブラウザーでフィルターできる。
該当の大分類フォルダ内で"M_"を検索するだけでも素早く検索できる。
背景モデル用のデータをキャラや武器で扱うことはない。
プロジェクト名フォルダーを最上階層に作る
Content直下に、プロジェクト名などでまずフォルダ分けをする。
こうすることで他プロジェクトにデータを移行してもパス被りが置きないようにする。
Content直下にデータを置かない。
外部アセットをまとめる
ストアからダウンロードしたアセットを、StoreAssetsとしてまとめる。
外部アセットが数個なら気にならないが、大量にあるならまとめた方がすっきりする。
ファイル操作は必ずUnreal Engine内で行う
ファイル操作はUnreal Engine内のコンテンツブラウザーで行う。
エクスプローラーなど外部でいじるとリンク切れを起こすので、絶対にやらない。
フォルダーカラーを設定して見やすくする
フォルダーカラーを設定する。
色で識別しやすくなる。
指定はないが、頻繁に使うフォルダーはわかりやすく赤や青に、外部アセットやメッシュ・アニメなど参照だけして直接使わないフォルダーは灰色にするとよい。
Unreal Engine アセット命名規則について | 技術者と非技術者のための技術系ブログ