MΛX

@m4xc.bsky.social

Software engineer fascinated by hardware, electronics, & the niche. Studying graphics programming at BUAS 🤟 Intrigued by voxels, pixel art, & graphics. https://m4xc.dev/

During the past week I decided to dive back into Radiance Cascades again, this time Holographic Radiance Cascades (HRC). It was really fun to again dive into this and make my own implementation of it, running entirely on my CPU. This demo contains no explicit light sources, only emissive pixels! :)

Did some experimentation with 4x4x4 voxel block compression today. I'm using a 64 tree with block compression applied at the leaf nodes. 3 interpolation bits per voxel. You can definitely see some compression artifacts. Both trees in this comparison store 8 bit RGB colors.

Uncompressed 64treeCompressed 64tree

Been working on voxel ray-tracing again lately, this time using a BVH2 TLAS and SVT64 (64tree) BLAS(s). The heat gradient in the video shows the step count from 0 to 128. This scene contains 256 voxel dragons, each model is 256^3 voxels :)

For the past 8 weeks I've been working in a team of fellow students on a voxel game engine. I've been primarily working on the graphics, creating a cross-platform render graph for us, and working together with @scarak.bsky.social on our cone-traced lighting, and various graphics features! :)

Cone traced reflections.Cone traced soft shadows.Cone traced soft shadows & ambient occlusion.

In case you're looking for the perfect university for 2025/2026: Consider the game program of Breda University. :) Teaching team straight out of gamedev, C++, strong focus on graphics, and dedicated tracks for programming, art and design. Tuition fee this year is 2530 for EU citizens. games.buas.nl

BildBildBildBild

I've been validating the results of my Surfel Radiance Cascades, comparing it to ground-truth and using the white furnace test. I think I'm really close to GT now, attached are 2 images, one is GT, the other is SRC :)

BildBild

I've been improving the Surfel Radiance Cascades since my last post, ironing out bugs one by one. It's starting to get difficult to see the difference between my ground truth renderer and the SRC one :) (in this rather low frequency scene, more high frequency tests coming soon)

Bild

After many weeks of effort I finally have radiance on screen now! I’ve still got issues mostly related to my Surfel Acceleration Structure, however I’d say the results are already looking quite promising. It has kind of a hand painted look to it now :)

I Finally got around to adding ImGui to my project, it was about time after logging info for a while :p I'm now working on splitting the Surfels into Cascades, after which I can start implementing the radiance gathering, merging, and finally applying the diffuse irradiance to the screen :)

Surfel debugger showing Cascade statistics to get an idea of what kind of work we're going to be doing.A Surfel covered terrain with some Debug GUI overlayed on top.

This week I've been implementing Surfels for the first time, the most challenging part so far has been the spawning algorithm. Stopping Surfels from spawning on top of each other. The spatial look-up acceleration structure is also a part which I still need to iterate on :)

~2500 Surfels distributed across the screen using gbuffer data.

I've been using Slang these past few days for a new project I've started working on. Currently working on the rasterization pipeline, I have a cube so far :) Slang has been really nice so far; using the User Guide on their website as well as the vk_mini_samples repo. github.com/nvpro-sample...

Re-posting some results I previously shared on Twitter :) These results are from a demo project I made for Radiance Cascades in 3D. It took quite some debugging & iterating to get here, but these results are very exciting. If all goes well I will be working on a production ready version very soon :D

Blue & green emissive cubes rendered with Radiance Cascades.Part of a Menger sponge with sky lighting rendered with Radiance Cascades.Random cubes rendered with Radiance Cascades.Sky lighting rendered with Radiance Cascades.

Going into the final week of the first project of Year 2, I thought I should share what I've been working on. I've been making a PBR renderer for the first time, with the target platform being the PS5. Obviously, I am still lacking IBL so that's what I will be working on this week :)