Skip to content

Prismorphic

A material editor and its Three.js preview runtime. A canonical node graph, compiled to GLSL, previewed in real time, and exported as versioned, documented JSON.

Launch coming
Year
2025 — mise en ligne à venir
Role
Design, architecture and development
Scope
Data format · GLSL compiler · Editor · Real-time runtime
Stack
TypeScript · Three.js · GLSL · Vite · JSON Schema · Playwright
01 / 04

The problem

A real-time render material is hard to tune in code. You need to see, adjust, compare, undo. Game-engine editors do that work, but their output stays locked in the engine.

Prismorphic answers a precise constraint: produce materials tuned visually, exportable in a readable, versioned, shareable format, then reloaded identically by a web runtime.

The format then becomes the contract. A material JSON file describes a canonical graph, independent of the editor that produced it and of the engine that displays it.

02 / 04

The chain

The pipeline is explicit end to end: the material JSON is resolved and diagnosed into a graph, that graph is compiled to GLSL with a cache, the shader is bound to a Three.js MeshPhysicalMaterial, the preview applies parameter changes live, and the whole is re-exported as JSON.

That linearity is what makes the system verifiable. Each step has typed inputs and outputs, and a graph error is diagnosed before compilation rather than producing a silently wrong shader.

A user’s journey follows the same logic: start from a preset, adjust parameters, inspect the graph, watch the preview, export.

03 / 04

What was built

  • A versioned JSON material format, specified normatively and validated by machine-usable schemas.
  • A graph-to-GLSL compiler with a cache, and an integration test suite that checks real shader compilation in a browser.
  • A Three.js runtime that binds the generated shader and applies parameter changes without rebuilding the material.
  • An editor cut into independent packages — editing shell, preview runtime, shared contracts — reusable separately.
04 / 04

Why this tool exists

Prismorphic is not a technical demo: it is the tool that was missing from the studio’s interactive projects. Tuning a material in a dedicated editor, then loading it as-is into a production scene, removes the usual gap between what the designer signed off and what the site displays.

It is the same logic as the World Editor on the home page: when art direction asks for a finish that no in-code tweak can reach, you build the tool rather than lower the bar.

Related guides

Prepare a project of the same order

Decisions to take before scoping, design, or migration.

Créarègle

A project of the same order to launch? Describe the problem.

Start a project