and sqrt( sdEquilateralTriangle(pos.xy, 10)**2 + sdCircle(pos.xz,10)**2 )
seems like there's scope for a nice little domain specific language to.
I think it would be interesting to have some composite operations that did probabilistic branching based upon a hashing RNG to conditionally combine shapes
something like
float thingy(pos,r) {
float more = infinity
float pseudoRandom = HashToUnit(pos)
if (pseudoRandom >0.5) {
float direction=randomAngleFromSeed(pseudoRandom+r)
more = thingy(pos+direction*r, r*0.75)
}
return min(circle(pos,r),more)
}
on_the_train•1h ago
It's a priceless resource nevertheless.
RogerL•1h ago