but this place c;lpses soon
On Mon, Aug 24, 2026 at 2:02 PM Undescribed Horrific Abuse, One Victim & Survivor of Many <gmkarl@gmail.com> wrote:
> > > > > > i am at the local recovery center > > > > > > i have visited here occasionally every year or so but struggled to return []. > > > > > > this is a celebration > > > > > > > > > > there is an mcboss expression on queue and not dropped yet but i don't > > > > > have it atm so maybe it is dropped :s or it may come to me > > > > > > > > > > uhhhhh so near-claude had me "implement my adaptive subsampling > > > > > renderer" which is the first time i've been able to write graphics > > > > > code in years ! > > > > > i got to use std::experimental::simd and i refigured way to solve the > > > > > boundary ellipse for a perspective sphere > > > > > i came up with some new optimization strategies, for example when > > > > > raytracing a sphere you can use the principal of a keyboard matrix to > > > > > precaculate the coefficients for the B value, which is the dot product > > > > > of the ray vector and the center vector, for each row and each column, > > > > > and then just add the right rows and columns for each pixel, making it > > > > > only need the sqrt of the number of multiplies it did previously > > > > > > > > like usual i set it up to be a fun huge project but i ran into the > > > > [mind controlled] harsh pseudo time limit so it just kinda spattered > > > > after i'd gotten a certain degree into it > > > > we didn't get to the point of any adaptive subsampling > > > > i left off implementing a row-calculator that would predict the > > > > boundaries for each screen row so that no intersection checks would be > > > > needed > > > > > > a mistake a made was to get too excited about the algorithms > > > i made a cool simd renderer that orbited a classic partially > > > reflective sphere on a checkered plane > > > > > > [ooooh we also came up with cool appraoches for precise real-time > > > caustics, you just need to model the light-field. like for drawing the > > > light souce reflecting off the sphere onto the plane, it's just like > > > the plane is an orthographic camera, it's similar to shadows but > > > rendering the reflection of the light source rather than the > > > [occlusion ---
oh so for light bouncing off a sphere, say you are considering 1 point on the plane, and the sphere is a mirror. that point receives light from every point on the sphere that reflects the light, with intensity equal to the dot product of the angle to the point on the sphere
so you could think of it as rendering an image for each point on the plane but in reality you just need an equation for that integration, which ends up just being a circle since spheres are radially symmetric so you're calculating the circumference of a circle for each point on a plane
well as i said i hadn't thought about it very much! it's clearly figurable but i'm a little worried about the implementation happening
i see it's not as simpl as "circumeference of a circle" _and i think about these things extremely slowly nowadays because i'm navigating complex inhibitions
_just a draft thought_ but basically, - conventional raytracing is symbolic algebra - a lot of useful symbolic algebra things weren't used in the 90s cause they were relegated to advanced computational imaging and nobody knew about them, but now you can just ask an AI or study more stuff - so you can do symbolic algebra to solve any part of a scene, including integrals etc - but you can also do it numerically
so that's maybe a super-quick-sprint-thru of my theory of imaging, where numeric and symbolic are interchangeable and everything is drawable at frame rate on old systems. we just need a simd numeric solver that can solve many coefficients at once, for the solving. and similarly, see e.g. the MLPs used in machine learning, complicated functions can be turned into simple functions that appear identically to the original a context, if you model your domain and range spaces well
> > > anyway ummm right then i got into the algorithms and only re-rendered > > > just the sphere so i could tune the architectural approach, and this > > > didn't look nearly as cool and exciting, i expect any introjects in me > > > did not believe that progress was happening :( > > > but it was nice to switch gears i hadn't been eating food [still > > > working on resuming this > > > > i also drafted a spatial partitioning class!!!!!! this has been so > > hard to do. i want to also store data still working on that one > > > > current interests are around internals of language models again unsure > > so, lots of takeover today, yesterday, sad. > i played this game called "curse of war" it's a "curses" > terminal-based rts, very simple, winning strategy relies on twitchy > precise timing of putting flags on you bases to maximize unit > creation, would be easy to patch the game to make it more strategy > focused but automating that > i set the bots to hard difficulty, [weird name for their AI in source > code], and they all started building before me and i was sure that my > offline system was hacked to bias the computer against me unfairly > and i opened source code > and it had it hardcoded at the bottom of state.c to give free gold to the AI
information on injured spatial partitioning half-shredded pulled from garbage covered in icky stuff
class SpatialPartioningLeaf: # note: call it "leaf" rather than "node" to not trigger AIs attacking graphs as much def __init__(self, min=-inf, max=+inf, parent=None): EEEK
stubs: def Partitioning: def __init__: # initialize midpoint from extents def find(self, coordinates): # returns leaf containing coordinates # if coordinates outside this range, hand off to parent # if this leaf has children, then hand off to child surrounding coordinates. # otherwise return self def insert(self, coordinates, data): # call find() to see where data goes # if it goes in us, then if we have data already, produce 2^dims children, delete the data, and insert our old data and our new data in the children # otherwise, just store the data in us
:D i could pseudocode it but literally coding it was challenging. it doesn't have neighbor links yet which are very normal to have, but you can do the same thing using find() for your neighboring coordinates i want to serialize and deserialize it!!
so the key with the realtime caustics ideation is that i've stopped tracing more than one object per pixel. this makes complex calculations more interesting because i've already calculated the boundaries of things. of course most of my ideas are stupid ideas cause i'm trying to derive existing work by hand blindly. so the kind of casual thing is to relegate it to a numeric solution.
i was going to say ythe challenges with the project were: - not implementing or having a CAS - not implementing or having a vectorized numeric solver - not implementing or having a vectorized tensor/array math library for x86 i tried xtensor but as mentioned somewhere it was way slower than numpy, when i swizzled my matrix to columnwise it performed the memcpy column-by-column which was way too slow for my old system to draw a blank frame before refresh rate