Type: concept
Confidence: 0.85
Created: 2026-04-16
Updated: 2026-04-16
Tags: 游戏开发C++架构引擎

游戏引擎架构

概述

C++ 游戏引擎按模块分层构建,核心层次为 Platform → Core → Render → Scene → Resource → Audio/Physics/Scripting/Editor。先跑通最小链路,再逐步扩展。

关键内容

  1. 分层模块划分:Platform(SDL2/GLFW)、Core(日志/事件/Timer)、Render(图形API封装)、Scene(场景树或ECS)、Resource(资源缓存/引用计数)、Physics(Box2D/Bullet)、Audio(miniaudio/OpenAL)、Scripting(Lua)、Editor(Dear ImGui
  2. 推荐开发顺序:① 窗口+主循环+三角形 → ② 渲染基础(Shader/Texture/Mesh)→ ③ 场景系统(Entity/Transform)→ ④ 资源系统 → ⑤ 编辑器雏形 → ⑥ 高级扩展(物理/脚本/多线程)
  3. 设计原则:先跑通再抽象;先做 Runtime 再做 Editor;窄而深优于大而全;必须有 Sandbox 测试场景;日志/断言/资源管理不可省

  4. Lua 脚本架构模式对比(按性能/灵活性权衡): | 模式 | 代表 | 优点 | 缺点 | |------|------|------|------| | 全 Lua | Love2DSolar2D | 迭代最快 | 性能上限低 | | C++ 引擎 + Lua 脚本 | 自定义引擎、CryEngine | 平衡性能与灵活 | 绑定维护成本 | | C# 引擎 + Lua 解释 | Unity + MoonSharp | 生态丰富 | 双语言开销 | | Luau 类型化 | Roblox | 安全性+性能 | 仅 Roblox 平台 | | LuaJIT FFI | LuaJIT 平台 | 接近 C 性能 | 复杂性高 |

来源

相关