WarframePBR Marmoset Shader

We’ve created a custom shader for Marmoset Toolbag that adds support for Warframe’s texture maps such as tint maps and animated emissives. This shader works with both specular and metalness workflows. Users should note that this shader does not include custom lighting calculations; it simply handles texture manipulation for easy preview of Warframe art assets using Toolbag’s PBR.

Below is a technical guide for its installation, set-up, and troubleshooting.


Download the Shader
Drop the shader file here (for default installation):
C:\Program Files\Marmoset\Toolbag 4\data\shader\mat\custom

If you’re on Marmoset Toolbag 3:
Drop this file in C:\Program Files\Marmoset\Toolbag 3\data\shader\mat\custom
If you have it on Steam, by default it will be located in:
C:\Program Files (x86)\Steam\steamapps\common\Toolbag 3\data\shader\mat\custom

Materials Plugin and Texture Quick Loader:

In addition to this, here is a simple plugin that helps with managing Warframe materials. With it, you can share tints between all materials in the same Material Group as well as assign random and uniform tints.

The plugin also has a texture quick loader, simply select any texture, and the remaining textures in the same folder will be loaded automatically, as long as naming conventions are followed (correct suffixes).

To install it, click Edit>Plugins>Show User Plugin Folder, and drop WarframeTintHelper.py into that folder. It will now be available under Edit>Plugins.

Download the Plugin

How to use the Shader

Select your material and scroll down to Extra, select Custom:

Click on the Shader property, and select WarframePBR.frag in the dropdown.

Note that you will need to load your texture files into the slots found within this custom shader - the usual material inputs are ignored.

This shader supports panning emissives. The emissive map should be in two component format (red channel for map, green channel for scrolling mask), and the Emissive Mask parameter should be toggled.

Some other features:

Emissive fresnel - Applies fresnel effect to the emissive, dimming it based on view angle. Fresnel Power determines the strength of the effect.

Use real time - Toggles between using animation time and system time. System time is preferred for seamless motion. Note that Temporal Anti-Aliasing (TB4 only) will blur the animated emissives, and should be disabled when using system time.

Validate filter - Toggles PBR Validation filter, rendering a heatmap of PBR values, checking if the values in albedo and specular textures are within range as defined in our texturing guidelines.

Red is below range, green is within range, blue is above range.

The general rule is that you want your piece to look mostly green. Some spots are fine, but there should be no continuous zones of red or blue.

If you have any questions about this shader, see the official shader forum post.