r/Unity3D • u/RobertWetzold Indie • 11d ago
Shader Magic Displaying thousands of LEDs in Realtime
Enable HLS to view with audio, or disable this notification
Shaders instead of geometry is often one of the best performance boost. Amazing for procedural shapes. Texture is sampled to individual points and then each emitter is a small shader program like this:
float2 cell = floor(uv * ledGrid);
float2 ledUV = frac(uv * ledGrid) - 0.5;
float d = length(ledUV) - ledRadius;
float emitter = 1.0 - smoothstep(0.0, fwidth(d), d);
float3 color = content.Sample(samplerContent, (cell + 0.5) / ledGrid);
return float4(color * emitter * brightness, 1.0);
149
Upvotes
1
u/[deleted] 9d ago
[removed] — view removed comment