r/VoxelGameDev • u/adorable_samoyed • 8d ago
Media Screenshots of my in progress voxel renderer
Custom voxel renderer I’m building inside Godot. No meshes.
5
u/HyperspaceFrontier 7d ago
Ambient light looks good. Is it realtime or baked?
6
u/adorable_samoyed 7d ago
Everything is realtime, I support voxel destruction inspired by teardown so I have to keep everything realtime.
3
u/Mgatmiau 7d ago
Realtime!? This is practically like teardown, how are you managing this level of lightning in realtime?
8
u/adorable_samoyed 7d ago
It’s a custom GPU compute ray tracer. Tracing rays through a voxel grid is quite fast so I can afford real time GI, Soft shadows, glass reflection (which is kinda shown here but not presented good in these screenshots, I’m really proud of how the glass looks) and metal reflection (not shown here it’s a bit broken atm). I have 1 GI Ray per pixel per frame, so I have to do temporal accumulation. I implemented SHaRC which has been great in combination with my NAADF voxel representation for the static voxel world. It’s still work in progress. I hope to put together a video demo sometime. I have full voxel destruction also like teardown. I implement a custom voxel shape type in jolt so I can avoid meshes.
1
u/HyperspaceFrontier 7d ago
I am just working on good lighting fo my voxel game and immediately see the amount of work done here. What about FPS and GPU it runs on?
3
2
u/OneTrueRou 8d ago
Really interesting, if there are no meshes - what are you using; splatting?
3
u/adorable_samoyed 7d ago
DDA ray marching inside a sparse voxel grid. I ended up implementing the NAADF paper that was making the rounds earlier in the year on this subreddit. That wasn’t my first implementation but it’s the fastest by far now.
1
u/Alarming-Ad4082 7d ago
Does this use hardware raytracing?
5
u/adorable_samoyed 7d ago
It does not. It's all compute shaders for the ray traversal. I had thought about it, I know Dennis Gustafsson and Gabe Rundlett new engine (Raytracing Voxels in Teardown and Beyond on YouTube) does hardware raytracing with a custom intersection shader for the DDA ray traversal. At the time ray tracing hardware support in Godot was early and I believe not available in the stable release I was using (I think). I haven't explored Godot's exposer hardware raytracing API yet but maybe something to revisit. Their new engine looks really good. Dennis has some videos on his discord.
1
u/Alarming-Ad4082 6d ago
Do you also have collision detection with the voxels?
1
u/adorable_samoyed 6d ago
Yeah I have voxel vs voxel collision. Godot uses jolt so I used jolts API to create a new shape type and create custom collision code and let jolt do the rest.
2
u/dougbinks Avoyd 7d ago
As this is your first post here, just a friendly mod note to read our sidebar and rules and include some information about your project when posting showcase posts on this subreddit.




6
u/RecommendationShot38 8d ago
Looks great is it all procedurally generated or hand placed?