Found a bug in #zoomasm's 360 projection (the distance estimate scaling was wrong).
Trying to do the maths by hand is too hard, so I copied my #GLSL #DualNumber implementation (for #AutomaticDifferentiation) from my fragm-examples repository, minus the #CPreProcessor macro hell, plus some quaternion-to-rotation-matrix code ported from Python that I found online.
Now it looks okish in the #equirectangular view, need to render some tests at various orientations and inject spatial metadata for viewing in VLC to be more sure I got it right...
#equirectangular #CPreProcessor #AutomaticDifferentiation #DualNumber #glsl #zoomasm
#Magnet #Mandelbrot set #fractal mashed up with #ThreeD #Triplex algebra (a la #Mandelbulb) rendered with #DualNumber #DistanceEstimation in #FragM fork of #Fragmentarium
My highly over-engineered extravagant framework of shaders including each other multiple times with different things defined (to emulate C++ templates with #GLSL function overloading without polymorphism) takes significantly longer to link the #shader than it does to render the #animation.
First attempts with typos gave 100k lines of cascaded errors in the shader info log, which which the Qt GUI list widget was Not Happy At All. Luckily the log went to stdout too, so I could pipe to a file and see the start where I missed a return statement or two.
#animation #shader #glsl #fragmentarium #fragm #DistanceEstimation #DualNumber #mandelbulb #triplex #ThreeD #fractal #mandelbrot #magnet