custom node
custom_node


            

struct Functions { float sdStar5(in float2 p, in float r, in float rf) { const float2 k1 = float2(0.809016994375, -0.587785252292); const float2 k2 = float2(-k1.x,k1.y); p.x = abs(p.x); p -= 2.0*max(dot(k1,p),0.0)*k1; p -= 2.0*max(dot(k2,p),0.0)*k2; p.x = abs(p.x); p.y -= r; float2 ba = rf*float2(-k1.y,k1.x) - float2(0.0,1.3); float h = clamp( dot(p,ba)/dot(ba,ba), 0.0, r ); return length(p-ba*h) * sign(p.y*ba.x-p.x*ba.y); } }; Functions F; uv =-(uv-1.0); float d = F.sdStar5( uv, 0.7, 0.5); float3 col = (d > 0.0) ? float3(0.0,0.0,0.0) : float3(1.0,1.0,1.0); col = lerp( col, float3(1.0,1.0,1.0), 1.0 - smoothstep(0.0,0.0, abs(d))); return col;



whirligig
gestaltung.ru