Installation
Choose your framework. The registry installs the component and its runtime dependency.
Installation unavailable
The preview is public, but its installable release is still being prepared.
The registry command writes the component to src/lib/components/ui/Metallic3DLogo.svelte and installs its dependencies.
The registry command writes the component to src/components/ui/Metallic3DLogo.tsx and installs its dependencies.
The registry command writes the component to src/components/ui/Metallic3DLogo.vue and installs its dependencies.
Basic usage
The shader fills its parent. Your layout decides whether that parent is a card, hero, or viewport.
Component API
Types below match the selected Svelte component.
Additional classes for the parent-sized root element.
- Type
string
Inline SVG markup, an SVG URL, or a data URL converted into extruded geometry.
- Type
string- Range / values
Inline SVG, URL, or data URL
Size of the extruded logo within its container.
- Type
number- Default
0.75- Range / values
0.35–1.5
Straight extrusion depth before the front and back bevel thickness is added.
- Type
number- Default
0.13- Range / values
0.04–0.6
One radius for both sharp corners in the SVG faces and the face-to-wall transitions.
- Type
number- Default
0.0125- Range / values
0–0.03
Speed of the reflected studio lights.
- Type
number- Default
0- Range / values
0–2
Base reflectance color of the metal.
- Type
string- Default
"#C5C8D2"
Blends between a non-metal surface and conductive metal.
- Type
number- Default
1- Range / values
0–1
Softness of the reflected lights and specular highlight.
- Type
number- Default
0.24- Range / values
0.04–1
Color of the first colored band in the reflected studio environment.
- Type
string- Default
"#C2C6FF"
Color of the second colored band in the reflected studio environment.
- Type
string- Default
"#D7A06E"
Brightness of the reflected studio environment.
- Type
number- Default
1.25- Range / values
0–3
Contrast between dark and bright reflected panels.
- Type
number- Default
1.1- Range / values
0.25–2
Starting angle of the reflected studio lights.
- Type
number- Default
15- Range / values
0–360
Elongation of reflections along the anisotropic surface axes.
- Type
number- Default
0.28- Range / values
0–1
Rotates elongated reflections in the surface plane, in degrees.
- Type
number- Default
15- Range / values
0–360
Strength of the thin-film interference colors. Set to zero for uncoated metal.
- Type
number- Default
0- Range / values
0–1
Refractive index of the thin coating. Higher values strengthen the interference colors.
- Type
number- Default
1.3- Range / values
1–2.333
Thickness of the iridescent coating in nanometers. Changes the reflected color spectrum.
- Type
number- Default
400- Range / values
0–1200
Strength of a transparent polished layer over the metal.
- Type
number- Default
0- Range / values
0–1
Softness of the clearcoat reflections, independent of the metal underneath.
- Type
number- Default
0.1- Range / values
0.04–1
Refractive index of the non-metal portion. Has no effect at full metalness.
- Type
number- Default
1.5- Range / values
1–2.333
Applies a filmic contrast curve to colors and highlights.
- Type
boolean- Default
true
Locks vertical rotation at the current angle while allowing horizontal orbit.
- Type
boolean- Default
false
Automatic rotation in degrees per second. A released spin eases into this speed in the direction of the gesture.
- Type
number- Default
8- Range / values
0–30
Height of the gentle up-and-down motion relative to the container.
- Type
number- Default
0.0075- Range / values
0–0.08
Up-and-down cycles per second. Set to zero to stop floating.
- Type
number- Default
0.16- Range / values
0–0.6
Stops the render loop while keeping the current frame visible.
- Type
boolean- Default
false
Enables manual orbit controls. Automatic rotation and floating continue when disabled.
- Type
boolean- Default
true- Range / values
true, false
Caps render resolution independently from the element size.
- Type
number- Default
2- Range / values
1–3
Scales GPU resolution without changing layout dimensions.
- Type
number- Default
1- Range / values
0.25–1
Runs after the shader is mounted successfully, including a WebGL fallback.
- Type
(backend: ShaderBackend) => void- Range / values
webgpu, webgl
Runs when automatic initialization changes the requested WebGPU backend to WebGL.
- Type
(backend: ShaderBackend, reason: string) => void- Range / values
webgl
Reports source-loading or renderer failures so the host application can decide how to recover.
- Type
(error: Error) => void
Exposes the imperative component lifecycle methods.
- Type
Component public instance- Range / values
pause, resume, reset, resize, destroy
Types below match the selected React component.
Additional classes for the parent-sized root element.
- Type
string
Inline SVG markup, an SVG URL, or a data URL converted into extruded geometry.
- Type
string- Range / values
Inline SVG, URL, or data URL
Size of the extruded logo within its container.
- Type
number- Default
0.75- Range / values
0.35–1.5
Straight extrusion depth before the front and back bevel thickness is added.
- Type
number- Default
0.13- Range / values
0.04–0.6
One radius for both sharp corners in the SVG faces and the face-to-wall transitions.
- Type
number- Default
0.0125- Range / values
0–0.03
Speed of the reflected studio lights.
- Type
number- Default
0- Range / values
0–2
Base reflectance color of the metal.
- Type
string- Default
"#C5C8D2"
Blends between a non-metal surface and conductive metal.
- Type
number- Default
1- Range / values
0–1
Softness of the reflected lights and specular highlight.
- Type
number- Default
0.24- Range / values
0.04–1
Color of the first colored band in the reflected studio environment.
- Type
string- Default
"#C2C6FF"
Color of the second colored band in the reflected studio environment.
- Type
string- Default
"#D7A06E"
Brightness of the reflected studio environment.
- Type
number- Default
1.25- Range / values
0–3
Contrast between dark and bright reflected panels.
- Type
number- Default
1.1- Range / values
0.25–2
Starting angle of the reflected studio lights.
- Type
number- Default
15- Range / values
0–360
Elongation of reflections along the anisotropic surface axes.
- Type
number- Default
0.28- Range / values
0–1
Rotates elongated reflections in the surface plane, in degrees.
- Type
number- Default
15- Range / values
0–360
Strength of the thin-film interference colors. Set to zero for uncoated metal.
- Type
number- Default
0- Range / values
0–1
Refractive index of the thin coating. Higher values strengthen the interference colors.
- Type
number- Default
1.3- Range / values
1–2.333
Thickness of the iridescent coating in nanometers. Changes the reflected color spectrum.
- Type
number- Default
400- Range / values
0–1200
Strength of a transparent polished layer over the metal.
- Type
number- Default
0- Range / values
0–1
Softness of the clearcoat reflections, independent of the metal underneath.
- Type
number- Default
0.1- Range / values
0.04–1
Refractive index of the non-metal portion. Has no effect at full metalness.
- Type
number- Default
1.5- Range / values
1–2.333
Applies a filmic contrast curve to colors and highlights.
- Type
boolean- Default
true
Locks vertical rotation at the current angle while allowing horizontal orbit.
- Type
boolean- Default
false
Automatic rotation in degrees per second. A released spin eases into this speed in the direction of the gesture.
- Type
number- Default
8- Range / values
0–30
Height of the gentle up-and-down motion relative to the container.
- Type
number- Default
0.0075- Range / values
0–0.08
Up-and-down cycles per second. Set to zero to stop floating.
- Type
number- Default
0.16- Range / values
0–0.6
Stops the render loop while keeping the current frame visible.
- Type
boolean- Default
false
Enables manual orbit controls. Automatic rotation and floating continue when disabled.
- Type
boolean- Default
true- Range / values
true, false
Caps render resolution independently from the element size.
- Type
number- Default
2- Range / values
1–3
Scales GPU resolution without changing layout dimensions.
- Type
number- Default
1- Range / values
0.25–1
Runs after the shader is mounted successfully, including a WebGL fallback.
- Type
(backend: ShaderBackend) => void- Range / values
webgpu, webgl
Runs when automatic initialization changes the requested WebGPU backend to WebGL.
- Type
(backend: ShaderBackend, reason: string) => void- Range / values
webgl
Reports source-loading or renderer failures so the host application can decide how to recover.
- Type
(error: Error) => void
Exposes the imperative component lifecycle methods.
- Type
Metallic3DLogoHandle- Range / values
pause, resume, reset, resize, destroy
Types below match the selected Vue component.
Additional classes for the parent-sized root element.
- Type
string
Inline SVG markup, an SVG URL, or a data URL converted into extruded geometry.
- Type
string- Range / values
Inline SVG, URL, or data URL
Size of the extruded logo within its container.
- Type
number- Default
0.75- Range / values
0.35–1.5
Straight extrusion depth before the front and back bevel thickness is added.
- Type
number- Default
0.13- Range / values
0.04–0.6
One radius for both sharp corners in the SVG faces and the face-to-wall transitions.
- Type
number- Default
0.0125- Range / values
0–0.03
Speed of the reflected studio lights.
- Type
number- Default
0- Range / values
0–2
Base reflectance color of the metal.
- Type
string- Default
"#C5C8D2"
Blends between a non-metal surface and conductive metal.
- Type
number- Default
1- Range / values
0–1
Softness of the reflected lights and specular highlight.
- Type
number- Default
0.24- Range / values
0.04–1
Color of the first colored band in the reflected studio environment.
- Type
string- Default
"#C2C6FF"
Color of the second colored band in the reflected studio environment.
- Type
string- Default
"#D7A06E"
Brightness of the reflected studio environment.
- Type
number- Default
1.25- Range / values
0–3
Contrast between dark and bright reflected panels.
- Type
number- Default
1.1- Range / values
0.25–2
Starting angle of the reflected studio lights.
- Type
number- Default
15- Range / values
0–360
Elongation of reflections along the anisotropic surface axes.
- Type
number- Default
0.28- Range / values
0–1
Rotates elongated reflections in the surface plane, in degrees.
- Type
number- Default
15- Range / values
0–360
Strength of the thin-film interference colors. Set to zero for uncoated metal.
- Type
number- Default
0- Range / values
0–1
Refractive index of the thin coating. Higher values strengthen the interference colors.
- Type
number- Default
1.3- Range / values
1–2.333
Thickness of the iridescent coating in nanometers. Changes the reflected color spectrum.
- Type
number- Default
400- Range / values
0–1200
Strength of a transparent polished layer over the metal.
- Type
number- Default
0- Range / values
0–1
Softness of the clearcoat reflections, independent of the metal underneath.
- Type
number- Default
0.1- Range / values
0.04–1
Refractive index of the non-metal portion. Has no effect at full metalness.
- Type
number- Default
1.5- Range / values
1–2.333
Applies a filmic contrast curve to colors and highlights.
- Type
boolean- Default
true
Locks vertical rotation at the current angle while allowing horizontal orbit.
- Type
boolean- Default
false
Automatic rotation in degrees per second. A released spin eases into this speed in the direction of the gesture.
- Type
number- Default
8- Range / values
0–30
Height of the gentle up-and-down motion relative to the container.
- Type
number- Default
0.0075- Range / values
0–0.08
Up-and-down cycles per second. Set to zero to stop floating.
- Type
number- Default
0.16- Range / values
0–0.6
Stops the render loop while keeping the current frame visible.
- Type
boolean- Default
false
Enables manual orbit controls. Automatic rotation and floating continue when disabled.
- Type
boolean- Default
true- Range / values
true, false
Caps render resolution independently from the element size.
- Type
number- Default
2- Range / values
1–3
Scales GPU resolution without changing layout dimensions.
- Type
number- Default
1- Range / values
0.25–1
Runs after the shader is mounted successfully, including a WebGL fallback.
- Type
(backend: ShaderBackend) => void- Range / values
webgpu, webgl
Runs when automatic initialization changes the requested WebGPU backend to WebGL.
- Type
(backend: ShaderBackend, reason: string) => void- Range / values
webgl
Reports source-loading or renderer failures so the host application can decide how to recover.
- Type
(error: Error) => void
Exposes the imperative component lifecycle methods.
- Type
Component public instance- Range / values
pause, resume, reset, resize, destroy