# MetaCore `MetaCore` 是一个基于 `Panda3D` 进行二次开发的 Unity-like 编辑器与引擎框架原型。 ## 当前目标 - 以 `Panda3D` 作为底层引擎与运行时基础 - 以 `Dear ImGui Docking` 搭建 Unity-like 编辑器工作流 - 使用 `GameObject + Component` 模型组织编辑器语义层 - 先把 `Hierarchy / Scene / Inspector / Project / Console` 跑通 - 在不破坏主架构的前提下,以模块化方式持续叠加功能 ## 技术栈 - `C++20` - `CMake` - `vcpkg` - `Panda3D 1.10.16` - `glm` - `Dear ImGui Docking` ## 目录结构 - `Source/MetaCoreFoundation`:基础服务 - `Source/MetaCorePlatform`:Panda3D 宿主窗口与输入采集 - `Source/MetaCoreScene`:场景与对象模型 - `Source/MetaCoreRender`:Panda3D 场景桥与显示区域驱动 - `Source/MetaCoreEditor`:编辑器模块与 Unity-like 界面 - `Apps/MetaCoreEditor`:编辑器程序入口 - `Apps/MetaCorePlayer`:运行时壳层入口 - `tests`:基础烟雾测试 ## 构建 前提: - 已安装 `vcpkg` - 已设置环境变量 `VCPKG_ROOT` - Windows 环境可联网时,`cmake configure` 会自动准备 `Panda3D 1.10.16` SDK - 如果已经本地安装 Panda3D,可设置环境变量 `PANDA3D_ROOT` ```powershell cmake --preset vs2022-debug cmake --build --preset build-debug ctest --preset test-debug ``` 如果希望生成更适合分发的可执行文件,可使用: ```powershell cmake --preset vs2022-release cmake --build --preset build-release ``` ## 当前完成内容 - Panda3D 单窗口宿主 - ImGui Docking 编辑器外壳 - Panda3D 中央场景 DisplayRegion - 网格、坐标轴、立方体绘制 - `Hierarchy` 选择 - `Inspector` 中编辑 `Transform` - `Alt+左键 / 中键 / 滚轮 / F` 相机交互 - 模块注册接口与内置编辑器模块 ## 技术支持连接 https://github.com/CedricGuillemet/ImGuizmo https://docs.panda3d.org/1.9/cpp/programming/using-cpp/index