WebGL & shaders
TypeMatter turns editable text into an animated WebGL heading, but the exported component still contains readable fallback text. You choose whether that text is an H1, H2, H3, paragraph, or span, then shape the typography, material, palette, motion, and effect area. The finished design can leave the editor as transparent artwork or as a responsive component ready for a web page.
What it does
Take the current heading into production or save its portable settings.
One optimized HTML file with the selected semantic element, accessible fallback text, baked text field and minimal WebGL runtime.
Enter up to 160 characters, choose the type style, and position, scale, or rotate the heading in the canvas.
Start from a direction preset, select the text role and material, then tune palette, distortion, highlights, glow, and texture.
Adjust the animation and pointer response, then choose H1, H2, H3, paragraph, or span for the exported component.
Download the standalone HTML component or transparent PNG, copy the embed code, or save the editable scene as JSON.
TypeMatter rasterizes the current type layout into a signed-distance field. A WebGL 2 fragment shader uses that field as the glyph boundary. Material presets can fill the letters, trace their outline, distort the space around them, or treat them as an emitter. Separate motion uniforms control flow, shimmer, breathing, and pointer response. Export does not replace the heading with canvas-only pixels. It writes the selected H1, H2, H3, paragraph, or span as readable fallback text and places an aria-hidden shader canvas above it. Once WebGL is ready, the visual fallback disappears, but the semantic text stays in the document.
Yes. You select the semantic element before export, and the generated component includes readable fallback text inside that H1, H2, H3, paragraph, or span. The shader canvas is marked aria-hidden.
Yes. The component output and PNG render only the typographic material and its effects; the editor's preview surface is not included.
Yes. Download the scene JSON. When you come back, paste it into TypeMatter's JSON editor and apply it to restore the component settings.
The exporter compresses the baked text field with CompressionStream, and the generated component opens it with DecompressionStream. Browsers without those APIs cannot use that component export path.