Hello

Hallo

Bonjour

こんにちは

Hei

Hola

你好

مرحبا

नमस्ते

3D Bike Configurator

Role / Services

Interactive & GSAP Development

Credits

Code and design: Sagar Luitel

Location & year

Kathmandu ©   2024

About the Project

A production-grade, highly interactive 3D WebGL bike configurator developed to elevate user customization and engagement for a premium utility bicycle manufacturer. By moving away from static 2D image sheets, this platform allows customers to configure components, frames, colors, and accessories in real-time under naturalistic dynamic lighting. Built upon high-fidelity CAD source data, the app bridges the gap between high-performance interactive 3D renderings and responsive state management across desktop and mobile browsers.

The Challenge

We faced a double-pronged architectural bottleneck: assets and synchronization. The raw CAD models from the design team exceeded 140MB with hundreds of thousands of polygons, which crashed mobile browsers instantly. Furthermore, dynamically updating paint textures, frame decals, and tire treads while camera coordinates transitioned between component nodes (handlebars, pedals, chainsets) introduced severe garbage collection pauses and frame drops (falling to 15fps) during rapid UI changes.

The Solution

I spearheaded a complete geometry optimization pipeline, using Draco mesh compression and texture baking in Blender to reduce the asset size to 4.2MB without loss of visual fidelity. I engineered a robust state-management solution using a React-like publish-subscribe pattern, ensuring texture swaps and material parameters were updated in a single render call. Finally, I optimized camera movements using GSAP timelines tied to Three.js orbital limits, leveraging requestAnimationFrame throttling to guarantee a locked 60fps across both modern iOS and Android devices.

Technologies Used

Three.js
Three.js
WebGL
GSAP
GSAP
React State
React State
CSS Grid
CSS Grid