For the author: Any particular reason you don't seem to be using DSA in your OpenGL code? ie glNamedBufferData() and friends. I found it the single thing that transforms OpenGL into something very user-friendly.
https://www.youtube.com/watch?v=IFUj53VwYvU
https://douglasdwyer.github.io/octo-release/ (online demo)
Lately I've been addicted to watching (micro) voxel engine videos on youtube. I need to resist my urge to write one (not that I think I would do a particularly good job). I've also found the voxel engine by John Lin to be particularly impressive.
I wrote a library to implement (most of) the Space Groups in the visual programming environment Grasshopper, which is inside 3d modeling software Rhino3d. This was to get architects working with 3d symmetries, not just 2d; and to get architecture students learning the spatial symmetries in more rigorous and complete ways. The scope and aim are completely different than these engines. But I'm hoping to rewrite it into a standalone program soon, so it's very helpful and timely to get this influx of information I hadn't sought out before!
But, you know, gotta do the OpenGL / DirectX / whatever vanilla API thing... that's what graphics programming is, isn't it...
Casting the rays from the camera will be nice and coherent, plus you probably get much better and easier shadowing using ray casts compared to shadow maps.
Curious if anyone has plotted GPU compute increases against display resolution + update frequency increases? When do the two lines cross?