feat: Addressables rules/sync tools, UI fixes, AddressKeys update
- Add AddressableRules.cs: single source of truth for prefix->group and prefix->label rules - Add AddressableRuleSyncWindow.cs: scan/fix/export-CSV tool (BaseGames > Addressables > Rule Sync) - AddressableBatchTool.cs: delegate DeriveGroupName to AddressableRules, remove duplicate PrefixGroupMap - AddressKeys.cs: add Labels constants (Preload, Poolable, Enemy, BGM, SFX, Charms, Config, Weapon) - Docs/Standards/AddressablesLabelSpec.md: new label naming & assignment spec - Docs/Standards/AssetFolderSpec.md: update Addressables group strategy section - SplashScreenController.cs: fix MainMenu loading flow - BootFlowSetupWizard.cs / SceneScaffoldTools.cs: scene scaffold fixes - PlayerInputActions: set UI/Point to Pass-Through type - Persistent.unity: add BootSequencer to auto-load MainMenu on play - EditorBuildSettings.asset: register scenes for build Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -57,14 +57,29 @@ namespace BaseGames.Core.Assets
|
||||
/// Addressable 标签常量(用于批量加载)。
|
||||
/// 注意:这里是标签名称而非资产地址,不会被 AddressKeyValidator 校验。
|
||||
/// </summary>
|
||||
/// <summary>
|
||||
/// Addressable Label 常量(用于批量加载与预热)。
|
||||
/// 代码中引用 Label 时必须使用此处的常量,禁止硬编码字符串。
|
||||
/// 完整说明见 Docs/Standards/AddressablesLabelSpec.md。
|
||||
/// </summary>
|
||||
public static class Labels
|
||||
{
|
||||
public const string Enemy = "Enemy";
|
||||
public const string Poolable = "Poolable";
|
||||
public const string BGM = "BGM";
|
||||
public const string Charms = "Charms";
|
||||
/// <summary>游戏启动时预热下载的资产标签(BootSequencer 使用)。</summary>
|
||||
/// <summary>游戏启动时通过 DownloadDependenciesAsync 预热下载依赖(BootSequencer 使用)。</summary>
|
||||
public const string Preload = "Preload";
|
||||
/// <summary>纳入 GlobalObjectPool 对象池管理的 Prefab(VFX、投射物、收集物等)。</summary>
|
||||
public const string Poolable = "Poolable";
|
||||
/// <summary>所有敌人顶级 Prefab,用于区域 Spawner 批量加载。</summary>
|
||||
public const string Enemy = "Enemy";
|
||||
/// <summary>背景音乐 AudioClip / FMOD bank 引用 SO,AudioManager 批量建立 BGM 索引。</summary>
|
||||
public const string BGM = "BGM";
|
||||
/// <summary>音效 AudioClip / SFX 配置 SO,AudioManager 批量建立 SFX 索引。</summary>
|
||||
public const string SFX = "SFX";
|
||||
/// <summary>所有护身符配置 SO(CHM_*.asset),EquipmentManager 批量加载护身符列表。</summary>
|
||||
public const string Charms = "Charms";
|
||||
/// <summary>运行时动态加载的配置类 SO(Inspector 直接引用的 SO 不加此标签)。</summary>
|
||||
public const string Config = "Config";
|
||||
/// <summary>所有武器 Prefab(WPN_*.prefab),玩家换形态时批量加载武器列表。</summary>
|
||||
public const string Weapon = "Weapon";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
11
Assets/_Game/Scripts/Core/BootSequencer.cs.meta
Normal file
11
Assets/_Game/Scripts/Core/BootSequencer.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: da575c82357778a4baa083a9afcb1b8a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user