MetaCore/README.md

70 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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