アセットの命名規則の重要性
Unreal Engine を使用してプロジェクトを進行する際、コンテンツブラウザ内のアセットが増えることで、同じバリエーションのアセットを重複して作成したり、似た名前のアセットを区別するのが難しくなっていきます。例えば、「Warrior」という名前のフォルダ内には、複数のブループリント、テクスチャ、モデルなどが含まれている場合、どのアセットが何を表しているのかがわかりにくくなります。
特に大規模なプロジェクトの場合、開発初期段階でアセットに対する一貫した命名規則を確立することは重要です。以下に示すのは、Epic Gamesが採用しているアセットの命名規則の一例です。以下のような命名規則を採用することで、プロジェクトでのアセット管理がしやすくなるでしょう。
[AssetTypePrefix][AssetName][Descriptor]_[OptionalVariantLetterOrNumber]
- AssetTypePrefix: アセットのタイプを表します。詳細は後述の表を参照してください。
- AssetName: アセットの名前です。
- Descriptor: アセットの用途や追加情報を示します。例えば、法線マップやオパシティ マップなどのテクスチャを示すことができます。
- OptionalVariantLetterOrNumber: アセットに複数のバージョンやバリエーションがある場合、区別するためのオプション部分です。
推奨されるアセットのプレフィックス
以下は Epic のドキュメントにおいて、推奨されているプレフィックスの例です。詳細については、Unreal Engine プロジェクトにおけるアセット命名規則の推奨事項 を確認してください。
アセット | プレフィックス |
---|---|
一般 | |
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_ |
フォルダ構成について
フォルダ構成についても悩むところですが、https://github.com/Allar/ue5-style-guide のスタイルガイドが参考になります。
|-- Content
|-- GenericShooter
|-- Art
| |-- Industrial
| | |-- Ambient
| | |-- Machinery
| | |-- Pipes
| |-- Nature
| | |-- Ambient
| | |-- Foliage
| | |-- Rocks
| | |-- Trees
| |-- Office
|-- Characters
| |-- Bob
| |-- Common
| | |-- Animations
| | |-- Audio
| |-- Jack
| |-- Steve
| |-- Zoe
|-- Core
| |-- Characters
| |-- Engine
| |-- GameModes
| |-- Interactables
| |-- Pickups
| |-- Weapons
|-- Effects
| |-- Electrical
| |-- Fire
| |-- Weather
|-- Maps
| |-- Campaign1
| |-- Campaign2
|-- MaterialLibrary
| |-- Debug
| |-- Metal
| |-- Paint
| |-- Utility
| |-- Weathering
|-- Placeables
| |-- Pickups
|-- Weapons
|-- Common
|-- Pistols
| |-- DesertEagle
| |-- RocketPistol
|-- Rifles
このフォルダ構成の主な特徴としては、アセットタイプ名(Material, Meshなど)のフォルダは作成しないルールとなっています。これらのフォルダは冗長であり、フィルタリング機能を代わりに活用するべきだと述べられてています。
最後に
アセット命名規則やフォルダ構成については完全な正解はないはずです。この記事であげたようなガイドラインから、プロジェクト内で統一されたルールを作成してみてください。
コメント