alla2001/material-painter
Media & DesignA free PBR texture painter for game and film assets, with layer painting, mesh map baking and node-based material design, built in Rust and wgpu.
Overview
Material Painter is a desktop application for painting PBR materials onto 3D models, aimed at game and film asset artists. It combines a layer-based painting workspace with mesh map baking and a node graph for building tileable materials. The implementation is in Rust on top of wgpu, and the project is under GPL-3.0.
Painting uses paint, fill and folder layers with blend modes, opacity, brush tips and grain, pen pressure, stabilizer, symmetry and screen/surface/UV projection. A model with several materials gets one texture set per material, each with independent layers, resolution, baked maps and exports. Smart materials and smart mask generators cover common effects such as edge wear, dirt, dust, rain streaks, drips and cavity grime, and masks support filters like levels, blur, warp and noise breakup.
Mesh map baking produces ambient occlusion, curvature, cavity, thickness, normal, height, position, world normal and ID maps, with cages and match-by-name support. The Material Designer node graph drives fill layers and masks, the Shader Maker lets users write custom nodes in WGSL with live preview and compiler errors, and the path tool places brush strokes evenly along curves for stitches, seams and panel lines. Export presets target Unreal, Unity (URP, HDRP, Built-in), Godot, glTF, Roblox and Blender, with custom channel packing and PNG, TIFF, TGA, JPEG or EXR output at 8, 16 or 32 bits.
Getting started
Ready-to-run builds are published on the releases page. On Windows, use the installer or unpack the zip and run it. On Linux, unpack the tarball, run ./material-painter, and optionally run ./install.sh to add it to the app menu.
To build from source, install stable Rust with rustup, then:
git clone https://github.com/alla2001/material-painter
cd material-painter
cargo run --release
cargo test runs the unit tests. GPU tests render offscreen without a window and write images to target/bake_test/:
cargo test --bin material_painter -- --ignored --test-threads 1
Once the app opens, the bundled asset library provides about 2,900 CC0 materials from Poly Haven and ambientCG, so painting can begin without importing textures first.
Usage constraints
Material Painter runs on 64-bit Windows 10 or 11, or Linux x64 with glibc 2.35 or newer (Ubuntu 22.04, Fedora 36, Debian 12 and later), and needs a GPU with DirectX 12 or Vulkan support, which the project says covers most cards from 2016 on. 8 GB of video memory is comfortable for 4K texture sets. The project labels itself early access and warns of rough edges.
Substance 3D Painter (.spp) import brings over the model, texture sets and the final look of base color, roughness, metallic and height, plus the parts of layer stacks that map onto Material Painter's layers; procedural materials, brush strokes and Painter-only channels do not transfer, and the import report lists what did. The MCP server that lets AI agents drive the app is off by default. The project is not affiliated with Adobe.
HotRepo's take
Material Painter appeared on HotRepo's new-project board for the Rust language on 2026-11-07, gaining 5 stars over a roughly two-hour growth window and reaching 106 stars and 7 forks; the recorded samples show 102 to 106 stars during that afternoon. That is a small, short observation window, so it supports a note that the project is newly noticed, not a claim about sustained traction. The technical scope is unusually broad for an early-access tool: a full painter, baker, node graph and WGSL shader authoring in one Rust/wgpu application. The main practical caveat for new users is that distribution is through prebuilt installers and binaries, so anyone evaluating it should check the releases against the source build described above.
Written by AI from the project's README, updated . The project's own docs are the source of truth.