初始化 UE 项目版本管理与协作规范
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
* text=auto eol=lf
|
||||
*.bat text eol=crlf
|
||||
*.cmd text eol=crlf
|
||||
|
||||
# Preserve archived originals, imported assets, licenses and QA evidence byte for byte.
|
||||
/SourceAssets/** -text
|
||||
/Content/** -text
|
||||
/gameFramework/third_party/** -text
|
||||
/Docs/Production/Licenses/** -text
|
||||
/Docs/QA/** -text
|
||||
|
||||
*.uasset binary
|
||||
*.umap binary
|
||||
*.blend binary
|
||||
*.fbx binary
|
||||
*.png binary
|
||||
*.jpg binary
|
||||
*.jpeg binary
|
||||
*.ttf binary
|
||||
*.otf binary
|
||||
*.wav binary
|
||||
*.whl binary
|
||||
*.xz binary
|
||||
*.zip binary
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
Binaries/
|
||||
Intermediate/
|
||||
Saved/
|
||||
DerivedDataCache/
|
||||
Builds/
|
||||
.vs/
|
||||
.idea/
|
||||
.vscode/
|
||||
*.sln
|
||||
*.suo
|
||||
*.vcxproj*
|
||||
*.VC.db
|
||||
__pycache__/
|
||||
*.pyc
|
||||
workTree/
|
||||
worktrees/
|
||||
.worktrees/
|
||||
tree1/
|
||||
tree2/
|
||||
tree3/
|
||||
.env
|
||||
.env.*
|
||||
*.blend1
|
||||
|
||||
# Generated UE packaging metadata and temporary files.
|
||||
Build/**/FileOpenOrder/
|
||||
Build/**/PipelineCaches/
|
||||
*.log
|
||||
*.tmp
|
||||
*.bak
|
||||
*.dmp
|
||||
*.pdb
|
||||
*.obj
|
||||
*.ilk
|
||||
|
||||
# Local credentials, private keys and signing material.
|
||||
.credentials/
|
||||
Credentials/
|
||||
*.pem
|
||||
*.key
|
||||
*.pfx
|
||||
*.p12
|
||||
*.keystore
|
||||
id_rsa
|
||||
id_ed25519
|
||||
@@ -0,0 +1,36 @@
|
||||
# 项目协作约定
|
||||
|
||||
本文件适用于 `D:/vibeCoding/ueRouge` 及其子目录。默认使用中文交流。项目是 Windows PC 键鼠机甲搜打撤游戏 IRONSPORE;按已确定的玩法迁移,重大玩法、平台及存档版本决策由用户确认。
|
||||
|
||||
## 工程和工具
|
||||
|
||||
- 使用 `ueRouge.uproject` 绑定的 UE 版本,当前为 **5.8.4**。用户已明确授权不保留 UE 项目模板;建立 `Content/IRONSPORE/` 的替代入口后,通过引擎工具按依赖清单移除模板资产,不删除无关用户内容或引擎内置资源。
|
||||
- 引擎操作优先使用 UE MCP,当前地址为 `http://127.0.0.1:8000/mcp`。每次操作前确认监听进程对应本工程完整 `.uproject` 路径,并回读引擎版本、活动关卡和 PIE 状态。
|
||||
- 并行任务使用独立 MCP 客户端会话,固定绑定各自实例;同一编辑器的修改操作串行执行。不接管其他任务的实例,不停止仍在使用的共享服务。
|
||||
- C++、CMake、配置、工具和文档可以通过文件工具维护。资产导入、移动、重命名和引用修改通过引擎工具进行,不直接拼写或修改二进制 `.uasset`、`.umap`。
|
||||
- Blender 建模与导出继续使用 Blender MCP,先读取当前场景并保留无关内容。按米制源文件和实际包围盒校验 UE 厘米制导入结果,不盲目叠加 Unity 导入缩放。
|
||||
|
||||
## gameFramework 和 UE 的边界
|
||||
|
||||
- 核心部分名称固定为 **`gameFramework`**,是项目根目录下独立的标准 C++ 库,使用 CMake 构建;必须能在没有 UE、UHT、UBT 和编辑器的环境下构建并运行测试。
|
||||
- `gameFramework` 的公共头文件和实现不得依赖 UE 头文件、UE 模块、`UObject`、`UCLASS`、`USTRUCT`、`UPROPERTY`、`FString`、`FVector`、`TArray`、`TMap`、`*.generated.h`、蓝图或资产路径。核心构建不得依赖 `.uproject`、`.Build.cs` 或 UE 安装路径。
|
||||
- 核心负责装备与库存规则、准备草案、预算、制造、出击和回收状态、伤害与资源数值、V1 数据模型及校验。UE 适配层负责 Actor、物理查询、输入、镜头、UMG、渲染、声音和平台服务。
|
||||
- UE 通过普通 C++ 数据、命令、快照、结果及领域事件与核心交互;引擎类型转换和 DataAsset 映射放在适配层。UMG 和蓝图不复制库存、扣费、损失或结算规则。
|
||||
- 文件写入、时钟、随机数、ID 生成和必要的世界查询由宿主实现核心定义的接口。核心不读取 UE 全局状态,不持有 Actor 或控件指针。
|
||||
- UE 的外部库链接规则与桥接模块放在 `Source/`,不放入独立核心。锁定编译器和运行库兼容条件,异常不得穿越宿主边界。
|
||||
- 开始实现前阅读 [架构方案](Docs/Design/GameFrameworkArchitecture.md) 和 [迁移计划](Docs/Production/UnrealMigrationPlan.md)。
|
||||
|
||||
## 存档和资源
|
||||
|
||||
- 当前进度存档固定为 **V1**。除非用户明确要求,不改变版本;版本不变时无需增加旧结构兼容或迁移层。UE 存档和测试数据使用独立目录,不自动读取或覆盖 Unity 玩家数据。
|
||||
- 保留稳定物品 ID、UID、蓝图 ID、回收事件键及唯一归属。需要持久化的结算先通过存储提交成功,再发布入库或消耗结果;保留原子写入、备份、损坏档保护、去重和失败回滚。
|
||||
- 自制源文件进入 `SourceAssets/`,UE 资产进入 `Content/IRONSPORE/`。公开免费素材必须核实具体许可、保留原件和 SHA-256,登记作者与来源,发布包附所需署名。
|
||||
- 不复制 Unity 缓存、Unity 引擎专用资产、原工作区副本或含凭据的文档;仓库地址通过 Git remote 管理,密码和令牌不写入源码、文档、提交说明或可上传日志。
|
||||
|
||||
## 验证和交付
|
||||
|
||||
- 按修改范围验证。核心逻辑先运行独立 CMake/CTest 测试,再验证 UE 桥接;UE 编译、PIE、打包和独立程序实测分别记录。Unity 的测试通过不能代替 UE 测试通过。
|
||||
- 子阶段完成必要编译、自动测试和短时功能检查;长时间帧率、压力和整局性能采样集中在集成阶段进行。
|
||||
- 每次调试结束退出本任务启动的 PIE,保存修改和验收资料,关闭本任务独占的 MCP 连接及临时进程;核对资源归属,不影响其他任务。编辑器是否退出按用户要求执行。
|
||||
- QA 记录与实际截图放入 `Docs/QA/`,截图注明关卡、实际分辨率和编辑器或独立程序环境,交付报告直接展示关键截图并链接记录。纯文档和架构阶段说明验证范围,不把规划当成运行验收。
|
||||
- 版本控制包含核心、UE 源码、配置、Content、必要插件源码、工具、文档和整理后的验收资料;排除 `Binaries/`、`Intermediate/`、`Saved/`、`DerivedDataCache/`、`Builds/`、IDE 缓存、worktree 目录及凭据。创建分支、提交或推送按用户明确要求执行。
|
||||
Reference in New Issue
Block a user