diff --git a/README.md b/README.md index 6506686..72a21ff 100644 --- a/README.md +++ b/README.md @@ -75,6 +75,7 @@ python tests/api/api_client_test.py 1. **[📖 项目入门总览](docs/01-项目入门/README.md)** - 5分钟了解项目 2. **[🏗️ 项目结构说明](docs/01-项目入门/项目结构说明.md)** - 理解架构设计 3. **[⚙️ 项目设置指南](docs/01-项目入门/项目设置指南.md)** - 配置开发环境 +4. **[🤖 AI开发指南](docs/AI_docs/README.md)** - AI编程助手专用文档 ### 🎯 第二步:学习规范 @@ -121,34 +122,65 @@ WhaleTown/ # 🐋 项目根目录 │ ├── 03-技术实现/ # 🔧 开发指导 │ ├── 04-高级开发/ # 🚀 进阶技巧 │ ├── 05-部署运维/ # 🌐 发布部署 -│ └── 06-功能模块/ # 🎮 功能文档 -├── 🎬 scenes/ # 🎭 游戏场景 -│ ├── Maps/ # 🗺️ 地图场景 -│ └── Components/ # 🧩 组件预制体 -├── 🔧 _Core/ # ⚙️ 核心系统 -│ ├── managers/ # 🎯 全局管理器 -│ ├── systems/ # 🔄 系统组件 +│ ├── 06-功能模块/ # 🎮 功能文档 +│ └── AI_docs/ # 🤖 AI专用文档(执行规范、代码模板) +├── 🔧 _Core/ # ⚙️ 核心底层实现 +│ ├── managers/ # 🎯 全局管理器(游戏状态、场景、网络等) +│ ├── systems/ # 🔄 系统组件(事件系统、输入系统等) +│ ├── components/ # 🧩 基础组件实现 +│ ├── utils/ # � 核件心工具类(字符串处理、数学计算等) │ ├── EventNames.gd # 📝 事件名称定义 -│ └── ProjectPaths.gd # 📂 路径统一管理 -├── 🎨 UI/ # 🖼️ 用户界面 -│ └── Windows/ # 🪟 窗口界面 -├── 🔨 Utils/ # 🔨 工具类 -├── 🎮 module/ # 🧩 功能模块 -├── 🎨 assets/ # 🖼️ 游戏资源 -├── ⚙️ Config/ # 📋 配置文件 -├── 🧪 tests/ # 🔬 测试文件 -└── 🌐 web_assets/ # 🌍 Web部署资源 +│ └── ProjectPaths.gd # � 路径组统一管理 +├── 🎬 scenes/ # 🎭 场景与视觉呈现 +│ ├── maps/ # �️ 地图一场景(游戏关卡、世界地图) +│ ├── characters/ # 👤 人物场景(角色、NPC、敌人) +│ ├── ui/ # 🖼️ UI界面场景(菜单、HUD、对话框) +│ ├── effects/ # ✨ 特效场景(粒子效果、动画) +│ └── prefabs/ # 🧩 预制体组件 +├── 🎨 assets/ # 🖼️ 静态资源存储 +│ ├── sprites/ # 🎨 精灵图片(角色、物品、环境) +│ ├── audio/ # 🎵 音频资源(音乐、音效) +│ ├── fonts/ # 🔤 字体文件 +│ ├── materials/ # 🎭 材质资源 +│ ├── shaders/ # 🌈 着色器文件 +│ ├── ui/ # 🖼️ UI素材(按钮、图标、背景) +│ └── icon/ # 📱 应用图标 +├── ⚙️ Config/ # 📋 配置文件管理 +│ ├── game_config.json # 🎮 游戏配置(难度、设置等) +│ ├── zh_CN.json # 🌐 本地化配置 +│ └── environment/ # 🔧 环境配置(开发、测试、生产) +├── 🧪 tests/ # 🔬 测试文件系统 +│ ├── unit/ # 🔍 单元测试(组件功能测试) +│ ├── integration/ # 🔗 集成测试(系统交互测试) +│ ├── performance/ # ⚡ 性能测试(帧率、内存优化) +│ └── api/ # 🌐 API接口测试 +└── 🌐 web_assets/ # 🌍 Web导出资源 + ├── html/ # 📄 HTML模板文件 + ├── css/ # 🎨 样式文件 + └── js/ # 📜 JavaScript脚本 ``` -### 🔧 核心组件 +### 🔧 核心架构说明 -| 组件 | 作用 | 文档链接 | +| 目录 | 作用 | 详细说明 | |------|------|----------| -| **EventSystem** | 全局事件通信 | [架构规范](docs/02-开发规范/架构与通信规范.md) | -| **GameManager** | 游戏状态管理 | [实现细节](docs/03-技术实现/实现细节规范.md) | -| **SceneManager** | 场景切换管理 | [场景设计](docs/04-高级开发/场景设计规范.md) | -| **NetworkManager** | 网络请求管理 | [网络管理器](docs/03-技术实现/网络管理器设置.md) | -| **ProjectPaths** | 路径统一管理 | [项目结构](docs/01-项目入门/项目结构说明.md) | +| **_Core** | 🔧 功能实现与组件实现 | 项目最基本的底层实现,包含所有核心系统和基础组件 | +| **scenes** | 🎭 场景与视觉呈现 | 包含地图场景、人物场景等一系列视觉呈现部分,主要是UI的实现 | +| **assets** | 🎨 静态资源存储 | 所有静态资源的存储,包括图片、音乐、视频、贴图等素材 | +| **Config** | ⚙️ 配置文件管理 | 主要用来配置各类环境,包括游戏设置、本地化等配置 | +| **tests** | 🧪 测试文件系统 | 放置所有对应组件的测试代码,方便快速进行功能性与性能测试 | +| **web_assets** | 🌐 Web导出资源 | 专门用于Web平台导出的相关资源和配置文件 | +| **docs/AI_docs** | 🤖 AI专用文档 | 专门为AI编程助手准备的执行规范和代码模板,提升vibe coding效率 | + +### 🎮 核心组件 + +| 组件 | 位置 | 作用 | 文档链接 | +|------|------|------|----------| +| **EventSystem** | _Core/systems/ | 全局事件通信系统 | [架构规范](docs/02-开发规范/架构与通信规范.md) | +| **GameManager** | _Core/managers/ | 游戏状态管理器 | [实现细节](docs/03-技术实现/实现细节规范.md) | +| **SceneManager** | _Core/managers/ | 场景切换管理器 | [场景设计](docs/04-高级开发/场景设计规范.md) | +| **NetworkManager** | _Core/managers/ | 网络请求管理器 | [网络管理器](docs/03-技术实现/网络管理器设置.md) | +| **ProjectPaths** | _Core/ | 路径统一管理工具 | [项目结构](docs/01-项目入门/项目结构说明.md) | --- diff --git a/docs/01-项目入门/项目结构说明.md b/docs/01-项目入门/项目结构说明.md index f1d7f9e..d983abc 100644 --- a/docs/01-项目入门/项目结构说明.md +++ b/docs/01-项目入门/项目结构说明.md @@ -20,15 +20,12 @@ ``` WhaleTown/ -├── 🔧 _Core/ # [框架层] 核心系统和管理器 -├── 🎬 scenes/ # [游戏层] 游戏场景和组件 -├── 🎨 UI/ # [界面层] 用户界面 -├── 🖼️ assets/ # [资源层] 美术资源 -├── ⚙️ Config/ # [配置层] 游戏配置和数据 -├── 🛠️ Utils/ # [工具层] 通用工具脚本 -├── 🧪 tests/ # [测试层] 测试文件 -├── 🚀 tools/ # [构建层] 构建和部署工具 -├── 🌐 web_assets/ # [发布层] Web版本资源 +├── 🔧 _Core/ # [核心层] 功能实现与组件实现,项目最基本的底层实现 +├── 🎬 scenes/ # [场景层] 场景与视觉呈现,包含地图、人物等视觉部分 +├── 🎨 assets/ # [资源层] 静态资源存储,包括图片、音乐、视频、贴图等 +├── ⚙️ Config/ # [配置层] 配置文件管理,用于配置各类环境 +├── 🧪 tests/ # [测试层] 测试文件系统,放置所有组件的测试代码 +├── 🌐 web_assets/ # [发布层] Web导出资源,专门用于Web平台导出 └── 📚 docs/ # [文档层] 项目文档 ``` @@ -36,9 +33,9 @@ WhaleTown/ ## 📁 详细目录结构 -### 1. 🔧 框架层 (_Core/) +### 1. 🔧 核心层 (_Core/) > **负责团队**: 开发团队 -> **职责**: 游戏底层框架,全局管理器和核心系统 +> **职责**: 功能实现与组件实现,项目最基本的底层实现 ``` _Core/ @@ -47,15 +44,25 @@ _Core/ │ ├── SceneManager.gd # 场景切换管理 │ ├── NetworkManager.gd # 网络通信管理 │ └── ResponseHandler.gd # API响应处理 -└── systems/ # 核心系统 - └── EventSystem.gd # 全局事件系统 +├── systems/ # 核心系统 +│ └── EventSystem.gd # 全局事件系统 +├── components/ # 基础组件实现 +│ ├── BaseCharacter.gd # 基础角色组件 +│ ├── BaseItem.gd # 基础物品组件 +│ └── BaseUI.gd # 基础UI组件 +├── utils/ # 🔨 核心工具类 +│ ├── StringUtils.gd # 字符串处理工具 +│ ├── MathUtils.gd # 数学计算工具 +│ └── PixelUtils.gd # 像素风游戏专用工具 +├── EventNames.gd # 事件名称定义 +└── ProjectPaths.gd # 路径统一管理 ``` **特点**: - 自动加载 (AutoLoad) 单例 -- 全局可访问 -- 与具体游戏逻辑无关 -- 提供基础服务 +- 全局可访问的核心功能 +- 与具体游戏逻辑无关的底层实现 +- 提供基础服务和组件框架 **使用示例**: ```gdscript @@ -69,167 +76,206 @@ SceneManager.change_scene("main") EventSystem.emit_event("player_moved", {"position": Vector2(100, 200)}) ``` -### 2. 🎬 游戏层 (scenes/) +### 2. 🎬 场景层 (scenes/) > **负责团队**: 开发团队 -> **职责**: 游戏场景、实体和可复用组件 +> **职责**: 场景与视觉呈现,包含地图场景、人物场景等一系列视觉呈现的部分 ``` scenes/ -├── Maps/ # 游戏地图场景 -│ ├── main_scene.tscn # 主游戏场景 -│ └── MainScene.gd # 主场景脚本 -└── Components/ # 可复用组件 - ├── characters/ # 角色组件 - ├── effects/ # 特效组件 - ├── items/ # 物品组件 - └── ui/ # UI组件 +├── maps/ # 地图场景 +│ ├── main_world.tscn # 主世界地图 +│ ├── dungeon_01.tscn # 地牢场景 +│ └── town_center.tscn # 城镇中心 +├── characters/ # 人物场景 +│ ├── player/ # 玩家角色 +│ │ ├── Player.tscn # 玩家场景 +│ │ └── Player.gd # 玩家脚本 +│ ├── npcs/ # NPC角色 +│ └── enemies/ # 敌人角色 +├── ui/ # UI界面场景 +│ ├── menus/ # 菜单界面 +│ ├── hud/ # 游戏HUD +│ └── dialogs/ # 对话框 +├── effects/ # 特效场景 +│ ├── particles/ # 粒子效果 +│ └── animations/ # 动画效果 +└── prefabs/ # 预制体组件 + ├── items/ # 物品预制体 + └── interactive/ # 交互对象预制体 ``` **设计原则**: - **场景内聚**: 脚本紧邻场景文件存放 -- **组件化**: 可复用组件统一管理 -- **模块化**: 按功能类型分类组织 +- **分类明确**: 按功能类型(地图、人物、UI、特效)分类 +- **模块化**: 可复用的预制体统一管理 +- **视觉导向**: 主要负责游戏的视觉呈现和UI实现 -### 3. 🎨 界面层 (UI/) -> **负责团队**: 开发团队 + 美术团队协作 -> **职责**: 用户界面和主题管理 - -``` -UI/ -├── Windows/ # 模态窗口 -│ ├── LoginWindow.tscn # 登录窗口 -│ └── AuthScene.gd # 认证场景脚本 -└── Theme/ # 全局主题 - ├── MainTheme.tres # 主题资源 - └── Fonts/ # 字体文件 - └── msyh.ttc # 微软雅黑字体 -``` - -**组织方式**: -- **Windows/**: 模态窗口和对话框 -- **Theme/**: 统一的UI主题和样式 -- **Fonts/**: 字体资源管理 - -### 4. 🖼️ 资源层 (assets/) +### 3. 🎨 资源层 (assets/) > **负责团队**: 美术团队 -> **职责**: 所有美术资源和素材 +> **职责**: 所有静态资源的存储,包括图片、音乐、视频、贴图等素材 ``` assets/ -├── sprites/ # 精灵图资源 -│ ├── characters/ # 角色精灵 -│ ├── effects/ # 特效精灵 -│ ├── environment/ # 环境精灵 -│ └── icon/ # 图标资源 +├── sprites/ # 精灵图片资源 +│ ├── characters/ # 角色精灵(玩家、NPC、敌人) +│ ├── environment/ # 环境精灵(地形、建筑、装饰) +│ ├── items/ # 物品精灵(道具、装备、收集品) +│ ├── effects/ # 特效精灵(爆炸、魔法、粒子) +│ └── ui/ # UI精灵(按钮、图标、边框) ├── audio/ # 音频资源 -│ ├── music/ # 背景音乐 -│ ├── sounds/ # 音效 -│ └── voice/ # 语音 -├── ui/ # UI专用资源 -│ ├── auth/ # 认证界面资源 -│ │ ├── bg_auth_scene.png # 认证背景 -│ │ └── login_frame_smart_transparent.png -│ ├── chinese_theme.tres # 中文主题 -│ └── datawhale_logo.png # 项目Logo +│ ├── music/ # 背景音乐(BGM) +│ ├── sounds/ # 音效(SFX) +│ └── voice/ # 语音(对话、旁白) ├── fonts/ # 字体文件 +│ ├── pixel_fonts/ # 像素风字体 +│ └── ui_fonts/ # UI专用字体 ├── materials/ # 材质资源 -└── shaders/ # 着色器 +│ ├── pixel_materials/ # 像素风材质 +│ └── shader_materials/ # 着色器材质 +├── shaders/ # 着色器文件 +│ ├── pixel_shaders/ # 像素风着色器 +│ └── effect_shaders/ # 特效着色器 +├── ui/ # UI专用资源 +│ ├── themes/ # UI主题 +│ ├── icons/ # 图标资源 +│ └── backgrounds/ # 背景图片 +└── icon/ # 应用图标 + ├── icon.svg # 矢量图标 + └── icon.png # 位图图标 ``` -**美术团队工作流程**: -1. 按分类将资源放入对应目录 -2. 遵循命名规范 (snake_case) -3. 确保资源格式符合Godot要求 -4. 配置正确的导入设置 (像素艺术使用最近邻过滤) +**像素风游戏资源特点**: +- **像素完美**: 所有精灵使用像素完美设置(Filter: Off, Mipmaps: Off) +- **统一风格**: 保持一致的像素密度和调色板 +- **分辨率标准**: 建议使用16x16、32x32等标准像素尺寸 +- **动画帧**: 角色动画使用精灵表(Sprite Sheet)组织 -### 5. ⚙️ 配置层 (Config/) +### 4. ⚙️ 配置层 (Config/) > **负责团队**: 策划团队 -> **职责**: 游戏配置、数据和本地化 +> **职责**: 配置文件管理,主要用来配置各类环境 ``` Config/ ├── game_config.json # 游戏主配置 -└── zh_CN.json # 中文本地化 +├── zh_CN.json # 中文本地化 +├── environment/ # 环境配置 +│ ├── development.json # 开发环境配置 +│ ├── testing.json # 测试环境配置 +│ └── production.json # 生产环境配置 +├── gameplay/ # 游戏玩法配置 +│ ├── character_stats.json # 角色属性配置 +│ ├── item_database.json # 物品数据库 +│ └── level_config.json # 关卡配置 +└── localization/ # 本地化配置 + ├── en_US.json # 英文本地化 + ├── zh_CN.json # 中文本地化 + └── ja_JP.json # 日文本地化 ``` -**策划团队工作内容**: -- **游戏数值配置**: 角色属性、物品数据、关卡参数 -- **本地化文本**: 多语言文本翻译和管理 -- **游戏平衡**: 数值平衡和游戏性调整 +**配置文件特点**: +- **环境分离**: 开发、测试、生产环境配置分离 +- **数据驱动**: 游戏数值通过配置文件控制 +- **本地化支持**: 多语言文本管理 +- **热更新**: 支持运行时配置更新 -**配置文件示例**: -```json -// game_config.json -{ - "player": { - "move_speed": 200.0, - "max_health": 100, - "jump_height": 400.0 - }, - "game": { - "target_fps": 60, - "auto_save_interval": 300 - } -} -``` - -### 6. 🛠️ 工具层 (Utils/) +### 5. 🧪 测试层 (tests/) > **负责团队**: 开发团队 -> **职责**: 通用工具和辅助脚本 - -``` -Utils/ -└── StringUtils.gd # 字符串处理工具 -``` - -**特点**: -- 纯函数,无依赖 -- 可被任何层调用 -- 提供通用功能 - -### 7. 🧪 测试层 (tests/) -> **负责团队**: 开发团队 -> **职责**: 质量保证和自动化测试 +> **职责**: 测试文件系统,放置所有对应组件的测试代码,方便快速进行功能性与性能测试 ``` tests/ -├── api/ # API接口测试 -├── auth/ # 认证功能测试 ├── unit/ # 单元测试 +│ ├── core/ # 核心组件测试 +│ ├── characters/ # 角色组件测试 +│ └── systems/ # 系统功能测试 ├── integration/ # 集成测试 -└── performance/ # 性能测试 +│ ├── scene_transitions/ # 场景切换测试 +│ ├── save_load/ # 存档系统测试 +│ └── network/ # 网络功能测试 +├── performance/ # 性能测试 +│ ├── framerate/ # 帧率测试 +│ ├── memory/ # 内存使用测试 +│ └── loading_times/ # 加载时间测试 +├── api/ # API接口测试 +│ ├── auth_tests.py # 认证接口测试 +│ └── game_api_tests.py # 游戏API测试 +└── ui/ # UI功能测试 + ├── menu_tests/ # 菜单测试 + └── dialog_tests/ # 对话框测试 ``` -### 8. 🚀 构建层 (tools/) -> **负责团队**: 开发团队/DevOps -> **职责**: 构建脚本和部署工具 +**测试类型说明**: +- **单元测试**: 测试单个组件的功能正确性 +- **集成测试**: 测试组件间的交互和协作 +- **性能测试**: 监控游戏性能指标,确保流畅运行 +- **API测试**: 验证网络接口的正确性和稳定性 +- **UI测试**: 测试用户界面的交互和响应 -``` -tools/ -├── build_web.bat # Windows Web构建脚本 -├── build_web.sh # Linux/macOS Web构建脚本 -├── serve_web.bat # Windows 本地服务器 -├── serve_web.sh # Linux/macOS 本地服务器 -└── README.md # 工具使用说明 -``` - -### 9. 🌐 发布层 (web_assets/) +### 6. 🌐 Web导出层 (web_assets/) > **负责团队**: 自动生成 -> **职责**: Web版本发布资源 +> **职责**: Web导出资源,专门用于Web平台导出的相关资源和配置文件 ``` web_assets/ -├── index.html # Web版本入口 -├── index.js # Godot Web导出JS -├── index.wasm # WebAssembly文件 -├── index.pck # 游戏资源包 -└── [其他Web资源] # 图标、配置等 +├── html/ # HTML模板文件 +│ ├── index.html # Web版本入口页面 +│ └── loading.html # 加载页面模板 +├── css/ # 样式文件 +│ ├── game.css # 游戏样式 +│ └── loading.css # 加载样式 +├── js/ # JavaScript脚本 +│ ├── game_loader.js # 游戏加载器 +│ └── utils.js # 工具函数 +├── icons/ # Web应用图标 +│ ├── favicon.ico # 网站图标 +│ └── app_icons/ # PWA应用图标 +└── config/ # Web配置文件 + ├── manifest.json # PWA清单文件 + └── service-worker.js # 服务工作者 ``` -### 10. 📚 文档层 (docs/) +**Web导出特点**: +- **PWA支持**: 支持渐进式Web应用功能 +- **响应式设计**: 适配不同屏幕尺寸 +- **加载优化**: 优化资源加载和缓存策略 +- **跨平台兼容**: 确保在各种浏览器中正常运行 + +### 7. 📚 文档层 (docs/) > **负责团队**: 全体团队 > **职责**: 项目文档和开发指南 +``` +docs/ +├── 01-项目入门/ # 新人必读文档 +├── 02-开发规范/ # 编码标准文档 +├── 03-技术实现/ # 开发指导文档 +├── 04-高级开发/ # 进阶技巧文档 +├── 05-部署运维/ # 发布部署文档 +├── 06-功能模块/ # 功能文档 +└── AI_docs/ # 🤖 AI专用文档 + ├── README.md # AI文档总览 + ├── architecture_guide.md # 架构执行指南 + ├── coding_standards.md # 代码风格规范 + ├── templates/ # 代码模板库 + │ ├── components.md # 组件模板集合 + │ ├── managers.md # 管理器模板集合 + │ └── ui_templates.md # UI模板集合 + ├── workflows/ # 工作流程指南 + │ ├── feature_development.md # 功能开发流程 + │ ├── bug_fixing.md # Bug修复流程 + │ └── testing_workflow.md # 测试执行流程 + └── quick_reference/ # 快速参考手册 + ├── code_snippets.md # 常用代码片段 + ├── api_reference.md # API快速参考 + └── troubleshooting.md # 故障排除指南 +``` + +**AI_docs特点**: +- **结构化执行**: 每个文档都包含可直接执行的步骤和代码模板 +- **标准化规范**: 为AI编程助手提供统一的开发标准和最佳实践 +- **模板驱动**: 提供完整的代码模板,确保代码一致性和质量 +- **工作流导向**: 包含详细的开发工作流程,提升AI协作效率 + ``` docs/ ├── 01-项目入门/ # 新人必读 @@ -245,18 +291,18 @@ docs/ ## 🤝 团队协作指南 ### 开发团队 🎮 -**主要工作区域**: `_Core/`, `scenes/`, `UI/`, `Utils/`, `tests/` +**主要工作区域**: `_Core/`, `scenes/`, `tests/` **日常工作流程**: -1. 在 `_Core/` 中开发核心系统和管理器 -2. 在 `scenes/` 中创建游戏场景和组件 -3. 在 `UI/` 中实现用户界面 -4. 在 `Utils/` 中编写通用工具 -5. 在 `tests/` 中编写测试用例 +1. 在 `_Core/` 中开发核心系统、管理器、基础组件和工具类 +2. 在 `scenes/` 中创建游戏场景、角色、UI界面和特效 +3. 在 `tests/` 中编写各类测试用例确保代码质量 **协作要点**: -- 遵循架构设计原则,使用事件系统通信 +- 遵循架构设计原则,使用事件系统进行模块通信 - 保持代码模块化和可复用性 +- 将通用工具类放在 `_Core/utils/` 中统一管理 +- 针对像素风游戏特点优化性能 - 及时编写测试和文档 ### 美术团队 🎨 @@ -264,28 +310,30 @@ docs/ **日常工作流程**: 1. 按分类整理美术资源到 `assets/` 对应目录 -2. 遵循命名规范,使用 snake_case 命名 -3. 配置正确的Godot导入设置 -4. 与开发团队协作调整UI资源 +2. 确保像素艺术风格的一致性和像素完美 +3. 配置正确的Godot导入设置(关闭过滤、禁用Mipmaps) +4. 与开发团队协作调整UI和游戏资源 -**协作要点**: -- 严格按照目录结构组织资源 -- 确保资源格式和质量符合要求 -- 及时与开发团队沟通资源需求 +**像素风游戏特殊要求**: +- 严格遵循像素完美原则 +- 保持统一的像素密度和调色板 +- 使用标准像素尺寸(16x16、32x32等) +- 精灵动画使用精灵表组织 ### 策划团队 📋 **主要工作区域**: `Config/` **日常工作流程**: -1. 在 `Config/` 中维护游戏配置文件 -2. 管理游戏数值和平衡性调整 +1. 在 `Config/` 中维护游戏配置和数值平衡 +2. 管理多环境配置(开发、测试、生产) 3. 负责本地化文本的翻译和维护 -4. 与开发团队协作实现游戏功能 +4. 设计游戏玩法和关卡数据 **协作要点**: - 使用JSON格式编写配置文件 -- 保持配置文件的结构清晰 +- 保持配置文件的结构清晰和可维护性 - 及时更新本地化文本 +- 与开发团队协作实现数据驱动的游戏功能 --- @@ -320,15 +368,24 @@ docs/ ### 资源管理规范 - 所有资源必须放在 `assets/` 对应分类目录下 - 使用描述性的文件名,避免使用数字编号 -- 像素艺术资源必须关闭过滤 (Filter: Off) +- **像素艺术资源必须关闭过滤** (Filter: Off, Mipmaps: Off) +- 保持统一的像素密度和调色板 +- 使用标准像素尺寸(16x16、32x32、64x64等) - 及时清理不使用的资源文件 ### 代码组织规范 - 脚本文件与场景文件放在同一目录 -- 使用事件系统实现模块间通信 +- 使用事件系统实现模块间通信,避免直接引用 - 保持单一职责原则,避免过度耦合 +- 针对像素风游戏优化性能(避免浮点数位置、使用整数坐标) - 及时编写注释和文档 +### 像素风游戏特殊规范 +- **像素完美**: 确保所有精灵在整数坐标上渲染 +- **统一风格**: 保持一致的像素密度和艺术风格 +- **性能优化**: 使用对象池管理频繁创建销毁的对象 +- **分辨率适配**: 使用像素完美的缩放方式适配不同分辨率 + --- **记住:良好的项目结构是团队协作成功的基础!** \ No newline at end of file