CrazyGLCrazyGLHomeExploreGitHubBrowse heroesLoading hero…← Back to gallery@crazygl/floating-product

Floating Product

A 3D product model drifts and slowly turns in a quiet studio atmosphere. The model wears its own PBR textures; soft dust particles drift through the air around it.

ReactWebGL3DImageInteractiveFont#3d#product#pbr#studio#dust#atmosphere#premium#three

Usage

import FloatingProduct from '@crazygl/hero-floating-product';

export default function Hero() {
  return (
    <FloatingProduct
      heading="Made to be admired."
      productModel="/models/camera.glb"
      environmentImage="/hdri/studio.avif"
      layout="content-left"
    />
  );
}

Customise

  • Layoutlayout (centered / content-left / content-right), positionX, positionY, dragInertia.
  • ProductproductModel (GLB/GLTF), productScale, spinSpeed, hoverAmp, parallaxAzimuth, parallaxElevation.
  • DustdustCount, dustSize, dustSpeed, dustSway, dustOpacity, dustColor, windStrength.
  • LightingenvironmentImage (HDRI), envIntensity, exposure, key/fill light colours and intensities.
  • Backgroundtransparent, bgTopColor, bgBottomColor.

Best for

  • Premium hardware launches and e-commerce hero pages.
  • Jewellery, watch and audio-gear brands where the product is the story.
  • Studio / showroom product showcases.
01 · Install the package

One command, zero config.

npm install @crazygl/hero-floating-product
02 · Render the component

Import once, drop it in.

The component takes the same props you see in the live customizer on the right — every default ships poster-quality.

hero.tsx
import FloatingProduct from '@crazygl/hero-floating-product';

export default function Landing() {
  return (
    <FloatingProduct />
  );
}
03 · Use it in a page

SSR-safe by default.

The wrapper renders static HTML on the server and only initialises the canvas after hydration, so search engines see your copy.

page.tsx
// app/page.tsx — works in SSR-first frameworks (Next, Remix, Astro, etc.)
'use client';

import FloatingProduct from '@crazygl/hero-floating-product';

export default function Page() {
  return (
    <section>
      <FloatingProduct
        heading="Say hi."
        subheading="Your new hero."
      />
      <article>
        <h2>Welcome</h2>
        <p>Your content keeps its own voice below the hero.</p>
      </article>
    </section>
  );
}
You might also like

Similar heroes

Product Pedestal

A 3D product model rests on a minimal floating pedestal under studio HDRI lighting. Slow turntable rotation, soft contact shadow, drifting dust, subtle mouse parallax, and press-and-drag to free-spin the product.

Product Turntable Studio

A 3D product model rotates on a premium polished turntable disc beside the hero copy. Studio HDRI lighting, warm key and cool fill softboxes, drag to free-spin, and pointer hover-zoom — a high-end product launch in code.

Product Exploded View

A 3D model splits into several floating layers on load, then slowly reassembles. Hovering separates the parts again — connector lines hint at the assembly path. Cinematic three-point studio lighting with HDRI reflections.

Scroll-to-Assemble Product

A 3D product begins disassembled and clicks together as you scroll the page. Once whole, the camera eases in and benefit labels fade in around it. Cinematic three-point studio lighting with HDRI reflections.

Product in Elemental Scene

A 3D product floats inside a stylised elemental world chosen from its benefit — water, fire, ice, cloud, earth or light. A custom environmental shader and an instanced particle system surround the product and tint its lighting to match the element.

White Infinity Studio

A 3D product GLB floats in a bright seamless infinity studio — the floor sweeps continuously up into the back wall with no visible seam. Three-point softbox lighting, a soft floor reflection, and a very subtle camera dolly sell the look of a premium catalogue photoshoot.
Live customizer

Floating Product

Product Model (GLB/GLTF)The model's own materials and textures are used as-is.Product size1Spin speed0.55Slow ambient turntable around the vertical axis.Hover amplitude0.04Vertical breathing motion.Parallax azimuth5Degrees of horizontal pointer-driven orbit.Parallax elevation3Degrees of vertical pointer-driven orbit.Dust count900Ambient dust motes drifting through the scene.Dust size0.022Dust drift speed0.18Vertical drift speed of the dust column.Dust sway0.35Horizontal wandering of each mote.Dust opacity0.65Dust colourWarm off-white sells the studio-air feel.Pointer wind0.5How strongly the cursor pushes dust away.Studio HDRIEquirectangular JPG drives the PBR reflections.Env intensity1Exposure1Key lightKey intensity1.4Fill / hemiFill intensity0.55Transparent backgroundBG topBG bottomHeading FontInteractivityWhich input drives the hero — try Scroll if you want the page to drive motion.
CrazyGL · crazygl.comProgrammable hero sections for real websites.