- 操作系统
- Windows 10 or 11
- 编译器(二选一)
- MSVC 版本19.38-19.44
- Clang (download link) + ninja (download link)
- 推荐使用Clang。原因是Clang编译速度比较快,并且对应LSP的IntelliSense比较强,支持Cursor等IDE
- Vulkan SDK 1.3 (download link)
- 推荐使用Vulkan SDK 1.3,Vulkan SDK 1.4版本会导致无法使用DebugPrintfEXT(待解决)
- CMake >= 3.26.0 且 < 4.0.0 (download link)
- Git (download link)
- 安装MSVC
- 下载 Visual Studio Installer
- 在 VS Installer 中,选择对应版本VS(推荐2022),并勾选 使用C++的桌面开发
- 如果找不到 Visual Studio 2022,可以在 此网页 中选择2022并进行下载
- 安装完毕后,在开始菜单搜索
x64 Native Tools Command Prompt for VS 2022并打开。在此终端中输入cl,如出现类似下图内容,则安装成功 
- 安装Clang
- 进入 LLVM-Project Github Releases
- 选择
LLVM-22.x.x-win64.exe,下载并根据指引安装 - 安装完毕后,添加
LLVM/bin到PATH环境变量 - 在终端中输入
clang --version,若出现类似下图内容,则安装成功 
- 安装Ninja
- 进入 ninja Github Releases
- 选择
ninja-win.zip,下载,并解压到对应目录 - 解压后,添加该目录到
PATH环境变量 - 在终端输入
ninja --version,若出现类似下图内容,则安装成功 
-
方法一:命令行
# Clone仓库 # 如果没有配置SSH的话,请把 `git@xxx` 替换为 `https://github.com/NJUCG/MoerEngine.git` # MoerEngine新的依赖项均使用submodule形式引入,所以请添加--recursive来clone所有依赖项 # 如果在clone时忘记添加submodule相关参数,请执行git submodule update --init --depth 1 git clone --recurse-submodules --shallow-submodules git@github.com:NJUCG/MoerEngine.git cd MoerEngine # 忽略一些特定commit对commit历史的影响(只影响开发过程,不影响编译和使用) git config --local blame.ignoreRevsFile .git-blame-ignore-revs # 根据模板创建一份MoerEngine的配置文件 # 配置文件中,可以设置默认的渲染器(光栅化、光追)、默认分辨率等选项 cp template.MoerEngine.toml MoerEngine.toml # 构建 cmake -B build # 如果使用clang+ninja,可替换为:cmake -B build -G Ninja -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ cmake --build build -j16 # change 16 to your cpu core count # 运行 ./target/bin/Debug/MoerEditor.exe
- 如果安装了 just,你可以参考根目录下的
template.justfile文件来编写你自己的脚本
- 如果安装了 just,你可以参考根目录下的
-
方法二:Rider
- TODO
-
成功启动后,可以参考 DEVELOPMENT.md 来了解MoerEngine的开发规范等其他内容
- 如果你希望在MoerEngine中启用CUDA、LibTorch、TensorRT,那么你需要手动在系统中安装这三个依赖,再在MoerEngine中配置他们。接下来为启用AI组件的具体操作手册:
-
下载依赖
- CUDA Toolkit 12.8 Downloads
- PyTorch Downloads
- TensorRT 10.x Downloads
- 推荐版本
- CUDA Toolkit 12.8
- libtorch-2.8.0-cu128
- TensorRT-10.12.0.36
- 请注意,LibTorch和TensorRT版本需要与CUDAToolkit版本相对应
-
根据模板创建配置文件(启用AI组件)
- 根据
template.EnableFeatures.cmake创建EnableFeatures.cmake - 修改
EnableFeatures.cmake中 CUDA 相关的配置项 - 注:MoerEngine的构建系统会自动检测
EnableFeatures.cmake文件。如果该文件存在,则会启用对应的可选组件
- 根据
-
将动态库添加进PATH
-
重新编译MoerEngine
cmake -B build cmake --build build -j16 # 或者使用just just gb # generate build
- 观察日志,若generate的日志出现了
WITH_CUDA=1,则成功启用AI相关组件;若日志中为WITH_CUDA=0,则没有启用AI相关组件
- 观察日志,若generate的日志出现了
-
配置VSCode的IntelliSense**(可选)**
- 启用CUDA后,光栅化渲染器就不支持Stencil模板测试了。原因是CUDA不支持
PF_D32_SFLOAT_S8_UINT
- MoerEngine支持NVIDIA NRD拓展。由于NVIDIA的封闭协议,MoerEngine无法直接引入NRD,需要用户自行下载NRD源码并进行配置。以下为具体操作步骤
-
Clone NRD源码
# 推荐在非MoerEngine目录下Clone NRD源码,避免不小心提交NRD源码 # 如果无法访问,请联系项目维护者 git clone git@github.com:NJUCG/NRD.git
-
根据模板创建配置文件
- 根据
template.EnableFeatures.cmake创建EnableFeatures.cmake(如果已存在则跳过) - 修改
EnableFeatures.cmake中 NRD 相关的配置项,将NRD_ROOT设置为你Clone的NRD源码路径
- 根据
-
重新编译MoerEngine
cmake -B build cmake --build build -j16 # 或者使用just just gb # generate build
- 观察日志,若generate的日志出现了
WITH_NRD=1,则成功启用NRD;若日志中为WITH_NRD=0,则没有启用NRD
- 观察日志,若generate的日志出现了


