Files
Cielonos/.claude/docs/technical-preferences.md
SoulliesOfficial 39b43680a9 爆更
2026-07-18 03:16:20 -04:00

5.5 KiB
Raw Blame History

Technical Preferences

引擎与语言

  • 引擎Unity 6 (6000.3.7f1)
  • 语言C# (.NET Standard 2.1)
  • 渲染管线Universal Render Pipeline (URP) 17.3.0
  • 物理Unity Physics 3D + AI Navigation 2.0.9

输入与平台

  • 目标平台PC (Windows)、主机PlayStation / Xbox
  • 输入方式:键鼠 + 手柄(双一等公民)
  • 主要输入:手柄(动作游戏,面向主机)
  • 手柄支持Full
  • 触控支持None
  • 平台备注:二次元 3D 动作游戏;战斗对输入响应要求严格。使用 Input System 1.18.0(新版,非 Legacy

命名规范

  • 类名PascalCaseCharacterBaseCombatManagerAttackAreaBase
  • 变量camelCase字段/局部变量PascalCase属性currentHealthMaxHealth
  • 事件On 前缀 + PascalCaseOnPhaseChangedOnNodeSelectedonAttackonGetHit
  • 文件名与类名一致PascalCaseCharacterBase.csRunManager.cs
  • 场景/预制体PascalCase 描述性命名(如 CityArenaPlayerCanvasC1_Axe
  • 常量PascalCase 或 UPPER_SNAKE_CASE 视场景而定
  • 架构模式Submodule轻量工具/ Subcontroller重逻辑组合模式——避免深层继承。Partial Class 按职责拆分(如 FutureWand.csFutureWand_Functions.csFutureWand_AnimationCallbacks.cs)。

性能预算

  • 目标帧率60 FPS主机基线
  • 帧预算16.67ms
  • Draw Call待定——URP Batching 已启用
  • 内存上限:待定——按平台分析

测试

  • 框架Unity Test Framework 1.6.0
  • 最低覆盖:数值公式、玩法系统
  • 必测项:数值公式、玩法系统

禁止模式

  • 深层继承链——使用 Submodule/Subcontroller 组合代替
  • 在可用 EventSubmodule 事件广播的场景中直接使用 Singleton 访问
  • 原生 Unity Audio——所有音频走 Wwise 中间件

自有工具库SLSUtilities 程序集)

重要:以下系统是项目自建的核心工具,非第三方依赖。在涉及 Feedback、动画事件、及通用工具时优先使用这些实现。

  • Feedback 系统 (Assets/Scripts/SLSUtilities/Feedback/) — 自研的屏幕反馈框架Cinemachine 震动、后处理效果、时间缩放等),替代 More Mountains Feel
  • FunctionalAnimation 系统 (Assets/Scripts/SLSUtilities/FunctionalAnimation/) — 自研的事件驱动动画框架,通过 FuncAnimPayload 在关键帧执行游戏逻辑
  • 其它工具 — SLSUtilities 程序集下的其它通用工具类

允许的库 / 插件

Unity Package通过 Package Manager

  • Universal Render Pipeline (URP) 17.3.0
  • Visual Effect Graph 17.3.0
  • Shader Graph 17.3.0
  • Timeline 1.8.10
  • Input System 1.18.0
  • AI Navigation 2.0.9
  • Localization 1.5.11
  • Burst 1.8.27
  • Collections 2.6.2
  • Mathematics 1.3.3
  • Editor Coroutines 1.0.1

第三方(项目内集成)

  • Wwise (Audiokinetic) — 专业音频中间件(完整项目在 Cielonos_WwiseProject/
  • Odin Inspector (Sirenix) — 序列化与编辑器增强
  • DOTween (Demigiant) — 动画缓动库
  • UniRx — Unity 响应式扩展
  • Behavior Designer (Opsive) — AI 行为树框架
  • PotaToon — 二次元/卡通渲染管线(核心视觉身份)
  • MagicaCloth 2 — 物理布料模拟
  • DamageNumbers Pro — 浮动伤害数字
  • Yarn Spinner — 叙事/对话系统git: YarnSpinnerTool/YarnSpinner-Unity#current
  • Amplify Shader Editor — Shader 编辑工具
  • LeanPool — 对象池优化

已弃用(素材保留但不再使用)

  • i2 Localization — 已弃用
  • LeTai TranslucentImage — 已弃用
  • More Mountains Feel — 已弃用,由 SLSUtilities/Feedback 自研系统替代
  • Nice Vibrations — 已弃用

VFX 资源包

  • MagicArsenal、Piloto Studio、VFX_Klaus、MasterStylizedFX、MasterStylizedProjectiles、CartoonVFX9X、Hovl Studio、INab Studio、Lana Studio、Vefects、BOXOPHOBIC、Archanor、Ground Impact VFX、HTraceSSGI、EnvironmentWeatherEffect

Architecture Decisions Log

  • [尚无 ADR — 使用 /architecture-decision 创建]

引擎专家路由

  • Primaryunity-specialist
  • 语言/代码专家unity-specialistC# / MonoBehaviour / ScriptableObject 模式)
  • Shader 专家unity-shader-specialistPotaToon、Shader Graph、URP 自定义 Shader
  • UI 专家unity-ui-specialistUGUI Canvas + UI Toolkit 混合)
  • 额外专家unity-addressables-specialist若后续采用 Addressables
  • 路由备注:本项目使用 URP + PotaToon 实现二次元渲染。战斗系统使用自研 FuncAnimFunctional Animation事件驱动架构——Shader 工作常与 VFX Feedback 绑定。UI 主要基于 UGUI Canvas部分界面使用 UI Toolkit。

文件扩展名路由

文件扩展名 / 类型 派发专家
游戏代码 (.cs) unity-specialist
Shader / 材质文件 (.shader, .shadergraph, .mat) unity-shader-specialist
UI / 界面文件 (.uxml, .uss, Canvas 预制体) unity-ui-specialist
场景 / 预制体 / 关卡文件 (.unity, .prefab) unity-specialist
原生扩展 / 插件文件 unity-specialist
总体架构评审 unity-specialist