I had built a rendering engine in Rust where the fundamental primitive is a particle, not a triangle. There are no meshes. No skeletons. No polygon budgets.
Every surface is a continuous matter field held together by spring-force physics. When something takes damage it doesn't play an animation, the forces holding it together get overcome and it physically falls apart. Destruction resolution is infinite because particles don't have polygon limits.
Cloth, fluid, soft-body, volumetric light, they all come from the same particle substrate. Different spring constants, not different systems. Every other engine fakes these as separate modules. This one doesn't fake any of them.
Geometry is SDF. That means analytical normals, mathematically exact ambient occlusion from the SDF gradient, and subsurface scattering from thickness probes. No baked textures. No approximations.
Current demo runs 50 million particles in real time. 650k lines of Rust. OpenGL 3.3 renderer with 23 post-processing passes. Full visual editor with a compiled Windows .exe on the releases page.
Shmungus•1h ago
Every surface is a continuous matter field held together by spring-force physics. When something takes damage it doesn't play an animation, the forces holding it together get overcome and it physically falls apart. Destruction resolution is infinite because particles don't have polygon limits.
Cloth, fluid, soft-body, volumetric light, they all come from the same particle substrate. Different spring constants, not different systems. Every other engine fakes these as separate modules. This one doesn't fake any of them.
Geometry is SDF. That means analytical normals, mathematically exact ambient occlusion from the SDF gradient, and subsurface scattering from thickness probes. No baked textures. No approximations.
Current demo runs 50 million particles in real time. 650k lines of Rust. OpenGL 3.3 renderer with 23 post-processing passes. Full visual editor with a compiled Windows .exe on the releases page.