Motion
Get Motion

ReferenceMaterial nodesUV

Spherize

Wraps space onto a ball in the middle: Mask is 1 on the ball.

UVspherize

Inputs

PinTypeStarts atNotes
UVpvec20–
Radiusradiusfloat0.4–

Outputs

PinType
outvec2
Maskmaskfloat

The code it becomes

What Studio writes for the graph below: a few lines of the material's shader, worked out for every pixel.

void mainImage(out vec4 fragColor, in vec2 fragCoord){    vec2 n1_uv = (vec2(fragCoord.x / iResolution.x, 1.0 - fragCoord.y / iResolution.y) * vec2(1.0, 1.0));    vec2 n1_centred = (vec2(fragCoord.x - 0.5 * iResolution.x, 0.5 * iResolution.y - fragCoord.y) / iResolution.y);    vec2 n1_square = (vec2(fragCoord.x, iResolution.y - fragCoord.y) / iResolution.y);    vec2 n2_out = (n1_uv * asin(clamp(length(n1_uv) / max(0.4, 1e-4), 0.0, 1.0)) / max(length(n1_uv), 1e-4) * max(0.4, 1e-4) * 0.6366);    float n2_mask = step(length(n1_uv), max(0.4, 1e-4));    fragColor = vec4(vec3(n2_out, 0.0), 1.0);}

In a graph

Texture coordinates into the node, and the node into the material, as Studio draws them.