How a 64k intro is made
After quickly skimming this article, I got sucked down the rabbit hole of &quot;ray marching&quot; - in concept, and implementation (mainly as a shader). The idea and how it works was fascinating, if a little above my head mathematically. I got the general gist of the idea, though; it&#x27;s kinda a combination of ray casting and ray tracing, where you send out the rays and step along them, but in ray marching you don&#x27;t cast secondary or tertiary (or more rays) like you do in ray tracing (thus limiting the processing, but also the level of realism) and instead continue to &quot;step&quot; (ie - &quot;march&quot;) along the ray past the intersection, to gather more information (and thus you can do volumetric stuff with transparency - smoke, water, clouds, marble, skin, etc).<p>Stepping is done using something called &quot;sphere tracing&quot; - where for each step along the ray, you compute a sphere, and where it intersects the scene, and only step that far; as you get closer to surfaces, the spheres become smaller (and so do the steps and more computations) - this keeps you from sampling along the ray where there is no scene, and stepping along the ray in larger &quot;jumps&quot; to keep the computational reqs down (it has limitations, particularly along edges of objects, and complex scenes).<p>For 4k comps (and in general, I think) objects of the scene are described algorithmically (ie - you don&#x27;t create a model of a sphere or torus or cube, but rather the mathematical representation of it) - so intersects with the ray become a bit trivial. At the same time, complex scenes can become tedious to lay out, so you typically see tessellations and repetitions of scene objects, or other mathematical constructs are used (fractals and the like) that can generate complexity from simple representations (thus, procedural rendering and representational concepts come into play of course).<p>There was a ton more involved (found interesting shadertoy demos from known authors, going over the concepts of how raymarching and related techniques are used - especially in the context of GPU shader rendering, where it is frequently used in 4k compos - the idea of &quot;two triangle demos&quot;, doing everything in the shaders) - and I probably got a lot of this wrong or over-simplified (as I said, I felt a lot went over my head in the math arena).<p>But I think I got the gist. Regardless, it was a fascinating exploration, and taught me some new things I didn&#x27;t know about until then; I haven&#x27;t kept up much with the demoscene since I stopped playing around with my Amigas a long time ago (aside from the occasional amazing demo or whatnot here and there - especially those authors who like to push their Craft - hint-hint - using microcontrollers). So it was nice to see what &quot;state of the art&quot; was. Although - milkytracker is still being used as well - which is nice to see.