9 小时 前
代码:
my_game/
├─ project.godot # 项目主配置文件(必须存在)
├─ .gitignore # 版本控制,git用
├─ .gdignore # 标记文件夹Godot不扫描(如docs、export)
├─ addons/ # 插件、资产商店第三方插件(固定顶层目录!)
│ └─ xxx_plugin/
├─ scenes/ # 所有场景tscn,按游戏实体分类
│ ├─ main/
│ │ ├─ main.tscn # 游戏入口主场景
│ │ └─ main.gd
│ ├─ player/ # 玩家:场景+脚本+贴图/模型放一起
│ │ ├─ player.tscn
│ │ ├─ player.gd
│ │ ├─ player_model.glb
│ │ └─ player_texture.png
│ ├─ enemies/
│ │ ├─ slime/
│ │ │ ├─ slime.tscn
│ │ │ ├─ slime.gd
│ │ │ └─ slime_sprite.png
│ │ └─ boss/
│ ├─ levels/ # 关卡场景
│ │ ├─ level_01.tscn
│ │ └─ level_02.tscn
│ └─ ui/ # UI界面场景
│ ├─ hud.tscn
│ ├─ menu.tscn
│ └─ pause_menu.tscn
├─ scripts/ # 全局通用脚本(不绑定单个场景的单例、管理器)
│ ├─ game_manager.gd # 全局游戏管理器(单例Autoload)
│ ├─ audio_manager.gd
│ ├─ save_system.gd
│ └─ utils/ # 工具函数库、通用数学/辅助脚本
├─ assets/ # 全局公用素材(跨多个场景复用的资源)
│ ├─ audio/
│ │ ├─ music/
│ │ └─ sfx/
│ ├─ fonts/
│ ├─ materials/ # 全局材质 .tres
│ └─ shaders/ # 着色器shader
├─ export/ # 打包输出目录(.gdignore忽略,不参与项目扫描)
└─ docs/ # 设计文档、需求、思维导图(.gdignore)
