Naming and standards
The same rules in every master, so every Material Instance reads the same way. Follow them for your own content.
Asset names
| Prefix |
Asset |
MM_ |
Master material |
MI_ |
Material instance |
MF_ |
Material function |
ML_, MLB_ |
Material layer, layer blend |
T_ |
Texture |
SM_ |
Static mesh |
Texture suffixes and import
| Suffix |
Content (R / G / B / A) |
Compression |
sRGB |
_BC |
Color / – (no alpha = BC1) |
Default |
On |
_BCA |
Color / Opacity (foliage, decals) |
BC7 |
On |
_NNMR |
Normal X / Normal Y / Metallic / Roughness |
BC7 |
Off |
_NNOR |
Normal X / Normal Y / AO / Roughness (foliage) |
BC7 |
Off |
_M |
Masks / AO |
Masks |
Off |
_H |
Height in R only |
Alpha (BC4), never VT |
Off |
- Blend Mask for MaskBlend: R / G / B = layers, Masks, sRGB off.
Tools/KurinFixTextureSettings.py applies these settings to the selected textures by suffix.
Parameter groups
| Group |
What goes there |
00 Settings |
Global switches. Always on top |
01, 02, 03 … |
Core groups: 01 Textures, 02 Base Color, 03 Surface, or one group per layer |
<group> (VT) |
Virtual Texture slots, right under their group |
| Named, no number |
Add-ons, A–Z: Cover, Dust, Emissive, Weather … |
Parameter names
Use <Feature>? = on/off switch, first in its group.
- Ends with
Map = texture. Ends with (VT) = Virtual Texture slot.
Flatten: 0 = texture, 1 = one flat value.
- Layer prefix:
Base -, R -, G -, B -; landscape L1 - … L4 -.
Vertex color
| Channel |
VtxBlend / MaskBlend |
Foliage |
| R |
Layer R (VtxBlend) |
Main bend weight (0 root, 1 top) |
| G |
Layer G (VtxBlend) |
Branch sway |
| B |
Painted puddles / wet spots |
Leaf flutter |
| A |
Dry Mask (Use Dry Mask (VC A)?): fill 1, paint 0 = dry |
Branch phase (random per branch) |