Files
Echo/README.md
2026-07-08 20:42:51 +08:00

4.4 KiB
Raw Permalink Blame History

Echo

Echo 是一个基于 Unity 的交互叙事 / 探索项目。当前项目版本为 0.1.1,核心开发内容集中在 Assets/_Project,包含场景加载、标题界面、游戏内流程、交互、任务、叙事、设置、结局和 LLM 聊天相关系统。

环境要求

  • Unity 2022.3.62f3
  • Git LFS 3.x 或更高版本
  • 推荐使用 Unity Hub 打开项目根目录

主要 Unity 包:

  • Universal RP 14.0.12
  • Input System 1.14.2
  • TextMesh Pro 3.0.7
  • Timeline 1.7.7
  • ProBuilder 5.2.4
  • Unity Recorder 4.0.3

快速开始

git lfs install
git clone <repo-url>
cd <repo-folder>
git lfs pull

然后用 Unity Hub 打开仓库根目录。首次打开时 Unity 会重新生成 Library,导入资源会比较久,属于正常情况。

如果资源显示为很小的文本指针,或者贴图 / 模型丢失,通常是 LFS 资源没有拉下来,重新执行:

git lfs pull

运行入口

Build Settings 当前启用的场景顺序:

  1. Assets/_Project/Scenes/PreVer/Scene_Loading/LoadingScene.unity
  2. Assets/_Project/Scenes/PreVer/Scene_Title/TitleScene.unity
  3. Assets/_Project/Scenes/PreVer/Scene_InGame/inGame.unity

开发调试时可以从 TitleSceneinGame 进入;需要验证完整流程时从 LoadingScene 开始。

项目结构

Assets/
  _Project/        项目自有内容,主要开发目录
  ThirdParty/      第三方美术、UI、模型、贴图等资源
  Plugins/         插件与运行库,例如 DOTween
  TextMesh Pro/    TextMesh Pro 资源
Packages/          Unity 包依赖清单
ProjectSettings/   Unity 项目设置

Assets/_Project 主要目录:

Animations/        动画资源
Art/               项目自有美术资源
Audio/             音频资源
Data/              ScriptableObject、任务、叙事、道具等数据
Docs/              系统设计与技术文档
Input/             输入配置
Prefabs/           角色、环境、UI 等预制体
Scenes/            项目场景
Scripts/           项目 C# 代码
Settings/          项目运行设置
Shaders/           Shader 与渲染相关资源

核心代码位置

  • Assets/_Project/Scripts/Core:场景加载、存档、设置、任务、叙事、触发器、输入锁等基础系统
  • Assets/_Project/Scripts/Interaction:交互与条件校验
  • Assets/_Project/Scripts/Inventory:物品与库存相关逻辑
  • Assets/_Project/Scripts/Player:玩家控制与玩家状态
  • Assets/_Project/Scripts/UI:标题、暂停菜单、设置面板、任务 UI、叙事 UI 等
  • Assets/_Project/Scripts/EndingSystem:结局流程与胜利条件
  • Assets/_Project/Scripts/LLM ManagerLLM 对话、Facts、Function Calling 相关逻辑

文档

项目内已有一批系统文档,放在:

Assets/_Project/Docs

常用入口:

  • InteractionSystem_Technical_Reference.md
  • TaskSystem_Technical_Reference.md
  • NarrationSystem_Technical_Reference.md
  • SettingsSystem_Technical_Reference.md
  • LLM_Facts_and_FunctionCalling_Setup.md
  • EndingSystem_Technical_Reference.md

版本控制约定

需要提交:

  • Assets
  • Packages
  • ProjectSettings
  • 所有需要的 .meta 文件
  • .gitignore
  • .gitattributes
  • README.md

不需要提交:

  • Library
  • Temp
  • Obj
  • Build / Builds
  • Recordings
  • Logs
  • UserSettings
  • Visual Studio / Rider / 其他 IDE 自动生成文件
  • 导入前的 .unitypackage 包文件
  • .pdb / .mdb 调试符号及其 .meta
  • Addressables / StreamingAssets 下自动生成的 aa 内容

Assets/ThirdParty 不要整体忽略。这里面的大贴图、模型、音频、视频、PSD、PDF、DLL 等二进制资源已经通过 .gitattributes 交给 Git LFS 管理。这样第三方资源仍然会随项目同步,但不会直接塞进普通 Git 历史。

如果以后确实需要保留某个原始 .unitypackage 文件,可以在 .gitignore 里给那个具体文件加例外规则;默认情况下,仓库只保留导入后的可用资源。

注意事项

  • 不要手动删除或重新生成已有资源的 .meta 文件,否则 Unity 引用可能丢失。
  • 第三方资源升级时,尽量单独提交,方便回滚。
  • 第一次打开项目、切换分支或更新大量资源后,Unity 重新导入较慢是正常现象。
  • 构建前确认 Build Settings 中启用的场景顺序没有被改乱。