cursor Init 完善多人协同changelog,以及godot相关基础skill和代码规范
This commit is contained in:
32
.cursor/rules/project/godot-scene-conventions.mdc
Normal file
32
.cursor/rules/project/godot-scene-conventions.mdc
Normal file
@@ -0,0 +1,32 @@
|
||||
---
|
||||
description: Godot 场景节点组织、依赖、生命周期与用户文本约定
|
||||
globs: "**/*.tscn"
|
||||
alwaysApply: false
|
||||
---
|
||||
|
||||
# Godot 场景与节点
|
||||
|
||||
## 场景组织
|
||||
|
||||
- 场景保持单一职责;可复用子结构拆成独立场景,并尽量能单独实例化验证。
|
||||
- 场景拥有专用脚本时采用可对应的命名,例如 `entity_view.tscn` 与 `entity_view.gd`;不要求无脚本场景创建空脚本。
|
||||
- 节点名称表达角色而非临时布局位置;不要依赖自动生成或易变化的名称作为跨场景契约。
|
||||
- 重复子场景使用稳定的 `PackedScene` 引用;避免在运行热点反复同步加载资源。
|
||||
|
||||
## 节点依赖
|
||||
|
||||
- 场景内部的稳定子节点可用唯一节点名或局部路径引用。
|
||||
- 外部依赖通过 `@export`、初始化方法或父级组装显式注入。
|
||||
- 禁止硬编码场景树根路径或多级上溯路径来获取其他系统节点。
|
||||
- 子节点向上报告事件使用信号;父节点向下调用明确方法。若项目已有总线,只用于真正跨系统的事件。
|
||||
|
||||
## 生命周期
|
||||
|
||||
- Node 释放使用 `queue_free()`;访问可能已释放的对象前检查有效性。
|
||||
- 连接到长生命周期发射者的回调应在退出树时断开,或使用可随接收者失效的安全连接方式。
|
||||
- `_process` 与 `_physics_process` 只做每帧必需工作;可事件驱动的更新不要轮询。
|
||||
- 高频实例化是否使用对象池由性能测量决定,不预先为普通节点增加池化复杂度。
|
||||
|
||||
## 用户文本
|
||||
|
||||
用户可见文本集中在表现层,并接入项目已有本地化方案;不要在深层逻辑中硬编码最终文案。
|
||||
Reference in New Issue
Block a user