Works the way you do
Mouse, keyboard, Apple Pencil or touch, or run the entire editor from a game controller, built as an accessible alternative to mouse and touch. Same tool on desktop and tablet.
Cross-platform · accessible · procedural
Surface Labs is a node-based, GPU-accelerated PBR texturing tool that runs natively on Windows, macOS, Linux, Android and iPad. Work with a mouse, keyboard, Apple Pencil or touch, or run the whole editor from a game controller, built as an accessible alternative to mouse and touch.
Get Surface Labs
For Windows, macOS,Linux, Android andiPad. Free while in early access.
Why Surface Labs
Mouse, keyboard, Apple Pencil or touch, or run the entire editor from a game controller, built as an accessible alternative to mouse and touch. Same tool on desktop and tablet.
One codebase, built on Flutter, gives you the full native tool on every platform, including tablet.
Many nodes do the work of several. One Blend covers every mode, one Histogram scans and remaps, so your graphs stay small and readable.
Write your own procedural nodes in a small built-in shading language when the stock library is not enough.
Every node runs as a fragment shader. Change any input and everything after it re-renders in real time, up to 4K.
No sign-in, no telemetry, no cloud dependency. Nothing leaves your device unless you export it.
A look inside
Materials
Build full PBR materials from a single graph: albedo, normal, roughness, metallic, AO and height. A 2D preview isolates any channel, and a 3D preview renders the material on a mesh under your own HDR lighting.
Programmable
When the stock library is not enough, write a node in the built-in shading language. Declarations become ports and controls, and it compiles and runs on the GPU alongside every other node. No native shader compiler required.
// Surface Shading Language. Declarations become ports and controls.
in sampler2D source; // @optional
param vec3 tint = vec3(1.0, 0.6, 0.2); // @color
param float amount = 1.0; // @range(0, 2)
vec4 shade(vec2 uv) {
vec4 base = texture(source, uv);
vec3 rgb = mix(vec3(uv.x, uv.y, 0.5), base.rgb, base.a);
return vec4(rgb * tint * amount, 1.0);
}Surface Shading Language: a custom node
Toolbox
Generators, filters, blends, transforms, normal and height tools, channel operations, histograms and math. Many are multi-mode, doing the job of several nodes at once.
Presets write the right maps with the right names and channel packing for each target, including ORM packing and DirectX or OpenGL normal orientation. Output as PNG, JPEG, TGA or BMP.
How it compares
How Surface Labs stacks up against Substance Designer, Material Maker and Blender's shader graph.
| Capability | Surface Labs | Substance Designer | Material Maker | Blender |
|---|---|---|---|---|
| Desktop and tablet | YesOne app, everywhere | Desktop only | Desktop only | Desktop only |
| Touch + Apple Pencil | Yes | No | No | No |
| Controller / gamepad navigation | Yes | No | No | No |
| Offline, no account | Yes | Account required | Yes | Yes |
| Built-in programmable shader nodes | YesRuns anywhere | YesDesktop | YesDesktop | Scripting / OSL |
| One-click game-engine export presets | YesUnreal · Unity · Godot · glTF | Yes | Yes | Not export-focused |
| GPU-accelerated on every platform | Yesdesktop and tablet | Desktop only | Desktop only | Desktop only |
| One-time purchase, no subscription | Yesown it, no rental | Subscription only | Free | Free |
Surface Labs runs everywhere you do, takes any input, works offline, and exports straight to your engine. Buy it once and own it, no subscription.
Cross-platform & accessible
One Flutter codebase gives you the full native tool on desktop and tablet, with first-class support for every input.
The full native app on every platform, including tablet.
Full game-controller navigation is built as an accessible alternative to mouse and touch.
Roadmap
The next four milestones we're building, in order.
New flood-fill nodes for fast masking and fills.
All 2D rendering moves to the Rust engine.
The first public beta release.
Post-processing effects for final output.
Pricing
Surface Labs is in active development. It's free to download and use during early access.
At v1.0.0
$10 / platform
Planned price when Surface Labs reaches its 1.0.0 release.