Smoke Ring
A layered multi-color ring with a soft, natural smoke texture.
Customize
Noise Scale
3
Noise Iterations
8
Radius
0.25
Thickness
0.65
Inner Shape
0.7
Speed
0.5
Scale
0.8
Rotation
0
Offset X
0
Offset Y
0
API reference
The wrapper adds playback and runtime safeguards while preserving the
complete Paper SmokeRing API. This includes its ring geometry, noise, colors,
motion, sizing, pixel-ratio, and styling props. See the
Paper Smoke Ring reference for the
full prop table and accepted ranges.
| Prop | Type | Default | Description |
|---|---|---|---|
playback | "auto" | "always" | "paused" | "auto" | Controls motion policy. Auto pauses for reduced motion and while the shader is outside the viewport. |
colors | string[] | ["#ffffff"] | Supplies up to ten ring colors. The wrapper renders white smoke when omitted. |
colorBack | string | "#000000" | Sets the background color. |
width / height | number | string | "100%" | Sets the canvas CSS dimensions. Size the parent element to establish the visible area. |
maxPixelCount | number | 2073600 | Caps the rendered pixel budget. Override only after measuring the target devices. |
Credits
The rendering engine is Paper Shaders, distributed under the Apache License 2.0. vivid-layer supplies the React adapter, playback policy, documentation, and Registry packaging; it does not vendor or modify Paper's shader source.