Nelarius
banner
nelarius.bsky.social
Nelarius
@nelarius.bsky.social
Maps @ Mapbox 🗺️ | Ray tracing ✨ | Voxels ◽️

My rendering notes: https://nelari.us/

GitHub: https://github.com/nelarius
Reposted by Nelarius
Rewrote my voxel raytracing experiment to use spherical harmonics. Probes are now spawned per air voxel adjacent to a diffuse face (as opposed to per diffuse face), which simplifies probe allocation a lot and hopefully leads to easier probe LOD system in the future.
November 14, 2025 at 11:06 AM
Worked on a homemade ray tracing denoiser. Ended up with something in the spirit of À-Trous wavelet and SVGF papers, which works quite well for simple, diffuse #voxel meshes.

8 spp images, before and after. Details of journey from Gaussian blur to À-Trous wavelet denoiser in thread 🧵👇

#raytracing
November 15, 2025 at 7:51 AM
Added a quick and dirty VOX importer to my #voxel project. Since I recently played through Monument Valley, I checked out Ephtracy's Monument Valley files first 🏛️
October 16, 2025 at 5:18 AM
The planetary sunrises and sunsets you get with the Unreal sky model are probably overkill for the #voxel renderer, but makes for nice #screenshotsaturday material 🪐
October 4, 2025 at 3:42 PM
Integrated the Unreal Engine sky model into the #voxel editor. The sunsets didn't look right in the Hosek-Wilkie model (left). With the new sky model, sunsets are now exactly how I wanted them 🌅

Pardon the fireflies, I need to get proper denoising set up ✨

#raytracing
October 1, 2025 at 4:59 AM
Good morning from an altitude of 40 km!

Putting off other tasks in the #voxel project to work on a much nicer ray-marched sky for the ray tracer.

#screenshotsaturday #raymarching #raytracing
September 20, 2025 at 12:13 PM
One unexpected benefit of the color palette is storing just an offset index in the voxel. Voxels shrank from 4 bytes to a single byte.

Added a simple SIMD optimization in my RLE algorithm, yielding a 6x #voxel chunk compression speed up 🏎️

#screenshotsaturday
September 13, 2025 at 2:03 PM
Adding an editable color palette to the #voxel editor made it feel more like a real tool. I was finally able to actually make something in it 🤓 Perfect playground for making scenes to test #raytracing algorithms!

#indiedev
September 5, 2025 at 5:17 AM
Experimenting with a face extrusion and retraction brush in my toy #voxel editor. Threw a bit of #raytracing in there while I was at it ✨
August 4, 2025 at 7:28 PM
Reposted by Nelarius
Worth watching presentation, also provides some background info on how ReSTIR came to be and where it is heading: "ReSTIR: Traveling the Path of Reuse" www.youtube.com/watch?v=MRg9...
I3D 2025 Chris Wyman's Keynote "ReSTIR: Traveling the Path of Reuse"
YouTube video by I3D Symposium
www.youtube.com
July 31, 2025 at 12:20 PM
Realized that my bookshelf contains a #programming story 😄
July 26, 2025 at 2:27 PM
More sliders in the #voxel editor UI! Added okhsl sliders alongside the regular hsl ones. The okhsl color space is much more uniform along its axes (look at the lightness slider).

Björn Ottoson has a great write-up about the colorspace here: bottosson.github.io/posts/colorp...
July 12, 2025 at 6:53 AM
Basics of the new #voxel UI layout implemented. Apple's RGB sliders are really nice and decided to try implementing those.

#cprogramming
July 9, 2025 at 5:09 AM
Tried Claude for creating interactive mockups of a #voxel editor UI and color scheme. Pretty happy with how quickly I was able to see and play around with some ideas I had.

Now for the fun part, implementing it all by hand in C 🙂

#claude #anthropic
July 6, 2025 at 4:02 PM
Went down a rabbit hole comparing my monolithic ray tracer to my wavefront implementation and trying to find performance improvements. Still many things I could do to improve wavefront performance, but sharing notes on progress so far.

nelari.us/post/wavefro...

#raytracing #rendering
July 1, 2025 at 6:06 AM
Reposted by Nelarius
I have a new article! It took a long time but I think it was worth it, hopefully you'll enjoy it too. www.elopezr.com/the-art-of-p...

Many thanks to @vassilis3d.bsky.social, @mokarakaya.bsky.social
and @angelortiz.bsky.social‬ for the help and encouragement
The Art Of Packing Data
The packing of data is good practice for many reasons, including disk space and efficient RAM or cache access. If we know the meaning of data we can often narrow down the range and precision, makin…
www.elopezr.com
June 16, 2025 at 6:42 PM
A different perspective of the cornell box ✨

#voxel #raytracing #rendering
June 14, 2025 at 11:43 AM
Added Russian Roulette implementation to my #voxel renderer. Didn't really appreciate before -- it doesn't make the image better, it makes it quicker to render. Left/right: vanilla and russian roulette at 16 spp. Speedup with roulette is 1.5x.

Impl from github.com/boksajak/ref...

#raytracing
June 12, 2025 at 5:45 PM
I've been trying to wrap my head around "next event estimation" in #raytracing. What exactly is it and how does it differ from the multiple importance sampling technique, presented e.g. here? lisyarus.github.io/blog/posts/m...
Demystifying multiple importance sampling
lisyarus.github.io
June 1, 2025 at 5:58 AM
Continuing with #raytracing in my #voxel project. Integrated the Hosek-Wilkie sky model, with an adjustable solar radius.

A really large sun disk makes it possible to test what the direct sun light contribution looks like in a simple brute-force renderer.

#cprogramming
May 28, 2025 at 7:30 PM
One of the nicest things about writing Metal shaders is the ability to share code between shaders and the C host program.

Behold, a quick and dirty sampling distribution visualizer to check that points are correctly sampled & transformed.

#raytracing #cpgrogramming
May 27, 2025 at 5:16 AM
Had to work on a small bugbear, namely my #voxel project wasn't handling retina displays correctly. Before and after, the voxel grid and the text now look way better than before.

Simple to implement for rendering, but the UI had to be scaled correctly.

#cprogramming
May 17, 2025 at 6:20 AM
Introduced a basic wavefront raytracer in my #voxel project. Even for a simple "weekend raytracer" renderer there is a performance improvement for larger bounce counts on a MacBook Air.

Loosely based on: jacco.ompf2.com/2019/07/18/w...

#raytracing #computergraphics
May 3, 2025 at 5:53 PM
Basic raytracing up and running in my #voxel project. It's a simple monolithic GPU kernel, using the Metal #raytracing API. The method is straight from Ray Tracing in One Weekend.

It's not exactly a real-time renderer, getting around ~10 FPS on an M2 chip in this scene 📽️

#computergraphics
April 27, 2025 at 11:46 AM
Integrating github.com/nicbarker/clay into the #voxel project and going down a mild text rendering rabbit hole.

#cprogramming
March 16, 2025 at 1:27 PM