Toggle Sidebar B
Light & dark mode D

Neon

Photorealistic neon tube / 3D pipe effect driven by a custom shape

Photorealistic neon tube / 3D pipe effect driven by a custom shape

Props

PropTypeDefaultDescription
centerposition{"x":0.5,"y":0.5}Center position of the neon shape
scalerange1Scale of the neon shape (1 = default size)
colorcolor#00ddffPrimary neon tube color
secondaryColorcolor#ff00aaShadow-side color for a two-tone / dual-lit pipe look
secondaryBlendrange0.5Blend between mono (0) and two-tone (1) tube coloring
glowColorcolor#00ddffColor of the outer glow / bloom
tubeThicknessrange0.2How far inward from the boundary the tube extends. Low = thin neon outline, high = thick 3D pipe
intensityrange1.5Overall brightness multiplier
hotCoreIntensityrange0.6Bright white-hot center line - the gas discharge glow inside the tube
glowIntensityrange0.6Outer glow / bloom strength
glowRadiusrange0.25How far the glow extends beyond the tube
lightAnglerange300Directional light angle in degrees - controls 3D shading on the tube
specularIntensityrange0.5Specular highlight brightness on the tube surface
specularSizerange0.5Specular highlight size - 0 = tight pinpoint, 1 = broad sheen
cornerSmoothingrange0.15Rounds sharp corners to mimic how real glass tubes curve at bends
flickerSpeedrange0Flicker animation speed - 0 = off, higher = faster sporadic on/off
flickerAmountrange0.2How often the neon flickers off - 0 = always on, 1 = frequent outages
flowSpeedrange0Flow animation speed - 0 = off, light rotates through the tube
flowAmountrange0.3Strength of the flowing brightness variation - 0 = uniform, 1 = dramatic
shapeshape{"type":"circleSDF","radius":0.35}Serialized shape configuration (JSON)
shapeSdfUrlshape-uploadURL to a pre-generated SDF .bin file - when non-empty, activates SVG mode and triggers a shader recompile
shapeType-Active SDF shape type - triggers recompile when shape is switched. When empty, derived from shape JSON at mount time.

Usage

vue
<Shader>
  <Neon
    color="#00ddff"
    :intensity="1.5"
  />
</Shader>