length() gives every pixel its distance from the centre. Subtract a radius and you have a signed distance: negative inside, positive outside, zero on the edge. Smoothstep on that number draws the disc and its outline with perfect anti-aliasing, no geometry involved.

New to shaders? Read Rive Shaders Explained →

Live
rive-shader-library.revIn the Scripting Course

Circle on its own artboard in the library file, with the ShaderQuad node and the WGSL, Inputs for Radius, Pulse. Copy the artboard into any Rive file.

More in Start here

See all →
Gradient
Stripes
Checker
Free Rive file

Noise, as a Rive file, on us

The Noise shader with the GPU Canvas node wired and the WGSL inside. Drop it into any Rive file and see how a shader lives there.

The other 27, in the course

Every shader here, as a ready-to-drop Rive file

Play with all of them here. The library file, every shader on its own artboard, comes with the Scripting Course, next to the lessons and the Space Game it belongs to.