Rejected: Native Gaussian Splatting Pre-visualization in Godot Engine
Context
V-Sekai’s AI-generated VR content requires high-fidelity PreViz that preserves details from Flux/TRELLIS outputs. Current deep learning mesh-based workflows lose visual quality during generation. Key metrics:
- 50k+ splats @ 90 FPS in Godot viewport
- T-pose compliance for rigging compatibility
Problem Statement
- Quality Loss: Mesh conversion destroys AI-generated surface details
- Performance Limits: Existing Godot renderer lacks 3DGS optimization
- Workflow Friction: Manual retopology adds 3-5 hours/asset
Proposed Solution
Native 3D Gaussian Splatting (3DGS) renderer for Godot 4.3+ with:
- Vulkan-optimized atomic splat sorting
- T-posed characters
- Direct Flux/TRELLIS data ingestion
Implementation Steps:
- Develop SPIR-V compute pipeline for depth sorting
- Create Godot Editor tools for splat timeline scrubbing
- Implement BC7-compressed covariance textures
Implementation Plan
Phase 1: Core Renderer (4 Weeks)
- Vulkan splat shader with spherical harmonics processing
- GPU radix sort via compute shaders
- Flux skeleton alignment system
Phase 2: PreViz Tooling (2 Weeks)
- SH coefficient debug overlay
- Performance profiling HUD
- Splat LOD distance culling
Validation:
- Success: 50k splats @ 90 FPS (RTX 3060), <0.5mm T-pose drift
- Failure: >16ms/frame spikes, >2mm bone position deviation
Benefits
- 98% PreViz quality retention vs 78% mesh workflow
- Zero manual retopology required
- 1:1 AI-to-engine visual parity
Risks and Limitations
- Vulkan 1.3+ required (excludes legacy GPUs)
- 18% VRAM overhead vs mesh rendering
- Requires NVIDIA GPUs for optimal performance
Alternatives Considered
Option | Pros | Cons |
---|---|---|
Mesh PreViz | Full compatibility | Large quality loss |
External Render | Higher fidelity | 300ms latency penalty |
When to Avoid This Solution
- WebGL-targeted projects
- Teams without Vulkan shader expertise
- Low-end mobile VR deployments
Organizational Alignment
Supports V-Sekai’s 2025 priorities:
- AI-to-engine content pipeline
- Photorealistic real-time PreViz
- Godot Vulkan performance leadership
Proposal Status
Status: Rejected
Decision Makers:
- V-Sekai Pipeline Lead
References
- Reference Implementation (Inria)
https://github.com/graphdeco-inria/gaussian-splatting - Playcanvas Engine Demo
https://github.com/playcanvas/engine - Cesium Experimental Branch
https://github.com/CesiumGS/cesium/tree/splat-spz-concept - Unity Implementation (Aras-P)
https://github.com/aras-p/UnityGaussianSplatting - Godot Implementation (2Retr0)
https://github.com/2Retr0/GodotGaussianSplatting - Godot Implementation (haztro)
https://github.com/haztro/godot-gaussian-splatting - Blender Omniview Addon (Kiri Engine)
https://github.com/Kiri-Innovation/3dgs-render-blender-addon - Trellis https://github.com/microsoft/TRELLIS
- Flux