MILWEB®
MILWEB®
MW/015AUREX MOTORSESTUDIO

AUREX MOTORS

AUREX MOTORS — pantalla inicial
ESTUDIO
MILWEB
TIPO
EXPERIENCIA WEBGL
ESTADO
EN LÍNEA

02 / LA IDEA

Experiencia cinematográfica · auto 3D en tiempo real

El sitio de un producto premium casi siempre termina en catálogo estático: no transmite la sensación de la marca ni dan ganas de explorar.

03 / EXPERIENCIA
  1. 01 / 01

    14 escenas con keyframes de cámara, rotación y luces, dirigidas por el scroll con damping exponencial.

    AUREX MOTORS — 01
  2. 02 / 02

    El panel escribe en un estado compartido; el auto hace lerp de materiales por frame.

    AUREX MOTORS — 02
  3. 03 / 03

    Modelo local, decoder Draco local y ambiente por Lightformers, sin HDRI ni CDN.

    AUREX MOTORS — 03
Configurador 3D con pintura, ruedas y cabina en tiempo real

04 / BAJO EL CAPÓ

  • 01La arquitectura separa el mundo DOM del mundo 3D por un estado mutable compartido (world.ts). Un ScrollTrigger por sección escribe (escena, …+

    La arquitectura separa el mundo DOM del mundo 3D por un estado mutable compartido (world.ts). Un ScrollTrigger por sección escribe (escena, progreso) y el rig de cámara lo lee en cada frame dentro del canvas, así que el scroll nunca re-renderiza React. El guion de la película vive en un solo archivo (scenes.ts), con keyframes de posición, objetivo y fov de la cámara, rotación del auto e intensidad de cada luz por escena, interpolados con damping exponencial. Es el damping lo que transforma cortes secos en movimientos de dolly. Encima, el paralaje de mouse desplaza cámara y key light, así que los reflejos en la carrocería siguen al cursor.

  • 02El auto es el Ferrari 458 de los ejemplos oficiales de three.js (GLB con Draco, decoder servido localmente, cero CDN), rebrandeado por nombr…+

    El auto es el Ferrari 458 de los ejemplos oficiales de three.js (GLB con Draco, decoder servido localmente, cero CDN), rebrandeado por nombre de material en runtime: la pintura pasa a ser un MeshPhysicalMaterial configurable con clearcoat, los acentos amarillos pasan a rojo AUREX, faros y luces traseras se vuelven emisivos ligados al guion (se encienden en la escena correcta), los cromados pasan a satín oscuro y el interior se vuelve cuero negro con ribete rojo. El configurador escribe directo en el estado compartido y el auto hace lerp de los materiales por frame, así que el cambio de color es líquido, sin ningún re-render del árbol 3D. El estudio es 100% procedural: Lightformers en lugar de HDRI, piso MeshReflectorMaterial y conos aditivos como luz volumétrica.

  • 03Performance y robustez: el PerformanceMonitor degrada el DPR automáticamente en GPU débil, el canvas principal se pausa (frameloop never) cu…+

    Performance y robustez: el PerformanceMonitor degrada el DPR automáticamente en GPU débil, el canvas principal se pausa (frameloop never) cuando la galería, que tiene canvas propio, cubre la pantalla, Lenis se apaga en touch y prefers-reduced-motion cambia todo damping por poses instantáneas. El debug dejó gotchas documentados: GSAP interpreta translateY(115%) inline como píxeles (lo correcto es animar y, no yPercent), el CSS fuera de @layer le gana a cualquier utility en Tailwind v4, y Chromium headless renderiza a ~1fps. Una cámara con damping nunca converge en screenshot, y eso se convirtió en un modo ?snap de validación visual.

CONSTRUIDO CONNext.js · TypeScript · React Three Fiber · Three.js · GSAP · Lenis · TailwindCÓDIGO

06 / RESULTADO

Película en 14 escenas · configurador 3D

PROYECTO PROPIO · EN LÍNEA

[ QUIERO ALGO PARECIDO ]

07 / PANTALLAS SELECCIONADAS
Configurador 3D con pintura, ruedas y cabina en tiempo real
PANTALLA 01Configurador 3D con pintura, ruedas y cabina en tiempo real
Escena trasera de la película con la luz trasera encendida
PANTALLA 02Escena trasera de la película con la luz trasera encendida
SIGUIENTE EXPERIENCIA07 / LUMEN

Lumen

Lumen

TODOS LOS PROYECTOS

TODOS LOS PROYECTOS