Skip to content

Thermion

Thermion brings Google’s physically based Filament renderer to Dart and Flutter. Load glTF models with PBR materials and skeletal animation, then render them across iOS, Android, desktop, and the browser through a single Dart API.

Get started · Quick start · Viewer API

These scenes are written in pure Dart — not Flutter widgets — compiled to WebAssembly and rendered live with Filament. Each viewer boots automatically as it scrolls into view and stops when you scroll away, so only the scenes near the viewport are running. Drag to orbit, scroll to zoom. They’re the same examples_lib scenes that power the standalone gallery, each running in its own cross-origin-isolated iframe.

Materials and lightingAnimated point lights, physical materials, a shadowed ground plane, and image-based reflections.
Skeletal animationA glTF asset loaded, framed, and animated in the browser.
Post-processingTune bloom, FXAA, exposure, temperature, tint, contrast, saturation, and vibrance live.
Procedural geometryNative geometry buffers, materials, lighting, and camera control without a model file.
The essentialsLoad a model, position the camera, and orbit the scene.
  • ViewerWidget — the shortest path from a glTF file to an interactive viewport in your Flutter app, with sensible defaults for lighting, camera, and post-processing.
  • ThermionViewer — direct control over entities, transforms, cameras, lighting, materials, animation, and effects through a Dart API.
  • Filament — the renderer underneath, on native and WebAssembly, with the platform plumbing kept out of your scene code.

Thermion separates rendering from Flutter integration, so the same scene code can drive a Flutter texture, a headless Dart process, or a browser canvas.