CrazyGLCrazyGLHomeExploreGitHubBrowse heroesLoading hero…← Back to gallery@crazygl/logo-water-reflection

Logo Reflected in Water

A glowing brand mark floats above a real 3D water plane. Perspective foreshortening, fog-attenuated distant reflection, and Schlick Fresnel sell the scene as photographic. Stacked Gerstner waves drive the surface; pointer wake rings and a continuous finger-press depression carve into the mirror.

ReactWebGL3DImageInteractiveFont#water#reflection#3d#ripples#logo#gerstner#cinematic#premium

Usage

import LogoWaterReflection from '@crazygl/hero-logo-water-reflection';

export default function Page() {
  return (
    <LogoWaterReflection
      logoImage="/brand/logo.svg"
      heading="Mirror still."
      sunElevation={6}
      sunColor="#ff7a3b"
    />
  );
}

Customise

  • LogologoImage (SVG/PNG extruded, or GLB/GLTF model), logoScale, logoY, logoDepth, logoBevel, logoMetalness, logoRoughness, logoRotationSpeed, logoTint, logoGlow, useGlbMaterials.
  • ScenewaterColor, skyColor, sunColor, horizonColor, sunAzimuth/sunElevation/sunStrength, mountainStrength, atmosphericHaze, waveScale/waveAmplitude/waveSpeed, rippleStrength, reflectionStrength.
  • CameracameraHeight, cameraDistance, cameraTilt, parallaxAzimuth, parallaxElevation.

Best for

  • Premium SaaS and product launch pages.
  • Luxury brand, watch, and jewellery sites.
  • Travel, hospitality, spirits, music, and film campaigns.
01 · Install the package

One command, zero config.

npm install @crazygl/hero-logo-water-reflection
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 LogoReflectedInWater from '@crazygl/hero-logo-water-reflection';

export default function Landing() {
  return (
    <LogoReflectedInWater />
  );
}
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 LogoReflectedInWater from '@crazygl/hero-logo-water-reflection';

export default function Page() {
  return (
    <section>
      <LogoReflectedInWater
        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

Water Surface

A dark reflective water plane. Stacked Gerstner waves animate the surface and the cursor leaves a continuous wake of expanding Gaussian wavefronts plus a live finger-press depression directly under the pointer. Sky, sun, and horizon refract through every displaced normal.

Screenshot Reflected in Chrome Waves

A product screenshot floats above a slow liquid-chrome ocean. Stacked Gerstner waves stretch its reflection across the surface while specular highlights migrate with the crests; pointer movement emits single-wavefront wake rings that distort the mirror in real time.

Water Ripple Headline

A bold headline printed on a moonlit pool. Stacked Gerstner waves and pointer-driven Gaussian wakes bend the letters in real time, and the CTA fires a circular wavefront across the surface. Reflective night water with soft moon highlights and a low cinematic camera.

Extruded Logo Monolith

Drop in a transparent SVG (or PNG) logo and it becomes a glossy black 3D sculpture with bevelled edges, studio HDRI reflections, a mirror floor, and an animated rim-light sweep. Premium product-shot look for SaaS, agencies, and AI tools.

Volumetric Beam Logo

Your logo floats inside a vertical museum-grade beam of light. Ray-marched volumetric cone reveals drifting dust around the brand, an emissive ring lights the logo, and a soft floor shadow grounds the scene. Premium SaaS / personal-branding / product-launch aesthetic.

Ice Encased Logo

Your logo is frozen inside a chunky beveled cube of real refractive ice. Three.js MeshPhysicalMaterial with IOR 1.31, clearcoat, Beer-Lambert blue attenuation and chromatic dispersion bends the studio HDRI around the brand. Frost on the front face melts on load to reveal the logo inside a clear ice-cube body.
Live customizer

Logo Reflected in Water

Logo (SVG / PNG / GLB)Transparent SVG, PNG, or a 3D GLB/GLTF file. SVG/PNG silhouettes are extruded into real 3D geometry; GLB/GLTF files replace the extrusion with your model. Either way the water plane reflects it.Logo scale1.6World-space size of the floating logo.Logo height0.95World Y above the water plane.Logo depth0.22Extrusion depth along the Z axis — how thick the mark looks.Bevel0.6Bevel size/segments. Higher = softer, jewellery-like edges that catch the sun rim light.Metalness0.95Roughness0.18Lower = mirror chrome. Higher = brushed metal.Rotation speed0.15rad/sContinuous Y-axis spin of the floating logo. Paused for reduced-motion users.Logo tintLogo glow1Emissive boost so the mark stays readable under low/below-horizon sun.Keep GLB MaterialsWhen the logo is a GLB/GLTF file, keep its authored PBR materials. Turn off to override with the metallic logo material above (Metalness, Roughness, Tint).WaterSkySunHot disc + bloom + water glint. Default is a warm sunset orange.Horizon glowSun azimuth-22°Horizontal angle of the sun, in degrees from forward.Sun elevation6°Sun altitude above the horizon. Low values (~5°) give the iconic golden-hour / sunset look. Negative values drop the sun BELOW the waterline for after-dark scenes — its glow still shows through the horizon haze.Sun strength1.6Distant mountains0.85Atmospheric haze0.85Wave scale1Wave amplitude0.16Ripple strength1Reflection strength1Wave speed1Camera height0.85World Y of the camera.Camera distance4.4Look-at height0.4Vertical world Y the camera aims at (raises = tilt up).Pointer parallax (yaw)5°Pointer parallax (pitch)3°Heading FontInteractivityWhich input drives the hero — try Scroll if you want the page to drive motion.
CrazyGL · crazygl.comProgrammable hero sections for real websites.