ALI LIN
04Ali Lin Lab
2026

Material Memory

E-commerce shows you what fabric looks like. Never what it moves like.

The Material Memory cloth panel filling the frame, a flat cream sheet carrying a faint woven grid, with a dark rule running along its top and bottom edges.

Problem

Luxury returns run high because a product page shows a still image.

Solution

A WebGL cloth you can push and drag, so a garment moves before it is bought.

Methods

The fabric runs on Verlet cloth physics, integrated per frame in Three.js and GLSL.

Next Step

Computing real normals so the lighting responds to the surface instead of approximating it.

04/05
← IndexAli Lin

MATERIAL MEMORY

a real-time fabric simulator that lets a buyer feel a garment before they buy it

material simulatorThree.js / GLSL2026shipped

E-commerce shows you what fabric looks like. Never what it moves like.

the shipping simulator · the FOLD test, looping · push, drop and drag it yourself: click to run live
open live ↗

WHAT

Luxury returns run high because a product page shows a still image. Drape, weight and sheen do not survive a photograph.

WHY

About half of apparel returns cite fit and material mismatch (NRF / Statista, 2025–26). A cloth simulation you can push and drag lets a garment behave before it is bought.

HOW

The same simulation that answers “how does this move” is the thing that keeps it from coming back.

Phase 1 · Cloth that drapes, not a loop of frames

Verlet cloth physics: a mass-spring mesh under distance constraints.

Integrated per frame in Three.js and GLSL, driven by your push, not pre-baked.

Phase 2 · The material feel, judged by eye

Drape, weight, sheen and how light rolls across a fold, tuned by hand against how real cloth falls. Judged by eye, not measured off a reference.

loads on click. The real enginehigh-res still pending. The live engine runs on click
the cloth under a user's hand · real-time Verlet simulation · click to run the real thing

PROOF

  • TACTILE PREVIEW IS A PROVEN LEVER: FOR THE CATEGORY. Apparel leads e-commerce returns at roughly 25%, and fit and material drive about half of them (NRF / Statista, 2025–26). Products with 3D/AR previews see up to 40% fewer returns and markedly higher conversion (Shopify platform data). Material Memory is an implementation of that lever for fabric. The numbers belong to the category, and the engine is built to capture them, not a measured result of its own.

    apparel return ~25%: NRF/Statista 2025–26 · fit/material ~50% of apparel returns · 3D/AR up to −40% returns: Shopify platform data

  • THE GAP IS SPECIFICALLY TACTILE. Over half of all e-commerce returns come from clothing, and the recurring reason a product page can't fix is that a still image shows what fabric looks like, never how it moves. That is the exact gap Material Memory closes.

    clothing = 56%+ of e-commerce returns (industry benchmarks)

LIMITS

  • The cloth never computes normals. Lighting in the fragment shader is derived procedurally from wrinkle and uv values, so what looks like a surface responding to light is a pattern that happens to read as one.
  • Depth range is narrow. Across a fold, z spans roughly three to eight percent of the frame width. The cloth reads as fabric mostly because of motion, not because of relief.
  • The settle relaxation that keeps the cloth from tearing also pulls vertices back toward the grid in x and y. Wrinkles therefore live almost entirely in z. There is no silhouette deformation and the sheet never occludes itself.
  • Everything here was tuned by hand and judged by eye. Latent has calibration files. This one has my opinion.

A hand-built physics engine pointed at a business number that returns cannot otherwise reach.

Ali Lin