3D Gaussian Splatting (3DGS) 融合渲染
Myth 引擎极具前瞻性地将 3D Gaussian Splatting 作为一等公民集成到了渲染管线中。 这不仅仅是一个独立的查看器,而是真正实现了神经辐射场与传统多边形 PBR 管线的深度混合渲染。
1. 开启 3DGS 特性
由于 3DGS 需要高度定制的 GPU 基数排序 (Radix Sort) 和间接绘制指令,该功能默认隐藏在 Feature Flag 之后以保持引擎极致的轻量化。
在 Cargo.toml 中启用相关特性:
toml
myth = { git = "...", branch = "main", features = ["3dgs", "gaussian-npz"] }2. 基础加载与渲染
你可以像加载普通网格体一样轻松加载点云数据,并将其放置在场景图 (Scene Graph) 中:
rust
// 1. 加载压缩的 NPZ 格式高斯点云
let cloud = engine.assets.load_gaussian_npz("assets/3dgs/point_cloud.npz".into());
// 2. 注入场景节点
let node = scene.add_gaussian_cloud("gaussian_cloud", cloud);
// 3. 自由进行空间变换
scene.node(&node).set_rotation_euler(
std::f32::consts::FRAC_PI_2,
0.0,
0.0
);必须使用高保真管线
3DGS 强依赖于高精度的深度缓冲与后处理合成逻辑,因此在初始化 App 时,必须显式指定使用 RenderPath::HighFidelity 渲染路径。
3. 物理正确的混合管线 (Hybrid Pipeline)
Myth 对 3DGS 的集成解决了目前业界的几个痛点:
- 深度测试 (Depth Testing): 高斯点云在进行光栅化时,会读取 PBR 不透明几何体(Opaque Pass)生成的深度缓冲,从而实现传统 3D 模型与高斯溅射场景的完美空间遮挡。
- 色彩空间合成: 引擎在执行投影与协方差计算时,严格校准了颜色转换逻辑。确保点云的输出结果能以正确的线性颜色空间与 PBR 场景融合,最终统一交由 Bloom 和 Tone Mapping 节点处理,杜绝了突兀的色差问题。