用途:为 Unity 项目提供引擎模式、生命周期回调、最佳实践与 C# 编码约定参考,帮助在开发中正确选用回调、组织项目结构并规避性能陷阱。
主要能力: 工程识别:通过 .csproj、.sln、.unity、.prefab、.asmdef、ProjectSettings/、Assets/、Packages/manifest.json 判断 Unity 项目。 项目结构:Assets 下分 Scripts(Player、Enemies、UI、Systems、Utilities)、Prefabs、Scenes、Materials、Textures、Audio、Animations、ScriptableObjects、Editor、Plugins;另有 Packages 与 ProjectSettings。 生命周期:Awake 初始化自身引用、Start 引用其他对象、Update 处理输入与非物理移动并用 Time.deltaTime、FixedUpdate 处理物理、LateUpdate 处理相机与 UI、OnEnable/OnDisable 订阅与退订、OnDestroy 清理资源。 数据驱动:用 ScriptableObject 存配置与共享状态,通过 [CreateAssetMenu] 与 [SerializeField] 在 Inspector 中配置。 对象池:提供泛型 ObjectPool 实现,预建实例、Get/Return 复用,减少 GC。 事件系统:基于 ScriptableObject 的 GameEvent 通道,支持 Raise、Register、Unregister。 关键规则:Update 中禁用 Find/FindObjectOfType;用 [SerializeField] 替代 public 字段;用 CompareTag 而非 ==;避免字符串方法;用协程或 async/await 避免阻塞主线程;OnDestroy 释放资源;用 .asmdef 提升编译速度;用 TextMeshPro;对象池替代频繁 Instantiate/Destroy;用 Addressables 替代 Resources.Load。 反模式:每帧 GetComponent、Update 中 new List、热路径字符串拼接、重复调用 Camera.main、永不停止的协程。 DOTS/ECS:性能关键系统可用 IComponentData、ISystem/SystemBase、Burst、NativeContainers,仅在性能确有需求时使用。
适用场景:Unity 游戏或实时应用的脚本开发、性能优化与代码规范落地。 限制:资料仅覆盖上述模式与规则,未提供安装命令、平台支持范围、收费与版本要求,这些信息暂未提供。