Skip to content

Texture Paint Suite

Module: Art · Category: Paint · Tool ID: LayeredTexturePaintSuite

A three-tab production paint suite. Splat Map generates RGBA splat-map textures + a matching material function for landscape and modular blending. Vertex Color does channel-isolated fills, blur, and JSON export. Tri-Planar generates a tri-planar projection material function with configurable scale and blend sharpness.

Screenshot 01 — Hero shot — Suite open on Splat Map tab with 4 layer names defined, output path configured, generated splat texture preview visible.


  • Building splat-map-driven blend materials (landscape, modular kit, terrain)
  • Filling vertex colors on selected meshes (channel-isolated, with blur smoothing)
  • Generating tri-planar material functions for kitbashed or auto-mapped materials
  • Quick exports of vertex-color data as JSON for downstream tooling
  • Don’t expect interactive 3D painting in this tool — for that, use Vertex Color Painter (Modeling module) or open the Painting Lab custom asset editor

  1. Open the EQLabs Hub and search for Paint or Splat (or browse to Art → Paint)
  2. Click the tool card
  3. Use the tab bar: Splat Map, Vertex Color, or Tri-Planar

Generate an RGBA splat map texture and a matching material function.

FieldWhat it doesDefault
Splat Layer CountHow many channels to use (max 4 for RGBA)4
Splat ResolutionOutput texture size1024
Splat Output PathFolder for the generated texture and material function/Game/EQLabs/SplatMaps
Layer names listOne name per channel (R/G/B/A) — used in the material function
Generate Splat TexturesCreates the RGBA splat texture
Generate Splat MaterialCreates a Material Function that samples the splat texture and exposes per-channel layer outputs
  1. Set layer count (typically 4 for full RGBA)
  2. Name each layer (e.g., Grass, Dirt, Stone, Sand)
  3. Set resolution and output path
  4. Click Generate Splat Textures + Generate Splat Material
  5. Use the material function in your master material to blend layers

Screenshot 02 — Splat tab with material — Splat Map tab with 4 named layers, generated splat texture and material function both visible in output folder.


Channel-isolated fill, blur, and JSON export for vertex colors on selected meshes.

FieldWhat it doesDefault
Channel R / G / B / AWhich channels are affectedAll on
Fill ColorColor used by Fill SelectedWhite (1,1,1,1)
Blur IterationsSmoothing pass count1
Fill SelectedSets the selected meshes’ vertex colors to Fill Color in the active channels
Blur Vertex ColorsIteratively averages neighbor vertex colors
Export to JSONWrites vertex color data per mesh to JSON
  1. Select meshes in the level
  2. Toggle which channels to affect (R/G/B/A)
  3. Pick a fill color (or use blur for smoothing existing colors)
  4. Click Fill Selected or Blur Vertex Colors
  5. Optional: Export to JSON for downstream tooling

Generate a tri-planar projection material function.

FieldWhat it doesDefault
Texture ScaleUV scale factor in the generated function1.0
Blend SharpnessHow sharp the tri-planar blend is at axis transitions4.0
Tri-Planar Output PathFolder for the generated material function/Game/EQLabs/Materials
Generate Tri-Planar MFBuilds a UMaterialFunction with the tri-planar setup
  1. Set the texture scale to match your project’s standard
  2. Tune blend sharpness (higher = sharper transitions; 4 is a good default)
  3. Click Generate Tri-Planar MF
  4. Use the function in your master material to enable tri-planar projection

FieldDefault
Layer Count4
Resolution1024
Output Path/Game/EQLabs/SplatMaps
FieldDefault
Fill ColorWhite (1,1,1,1)
Blur Iterations1
Channels R/G/B/AAll on
FieldDefault
Texture Scale1.0
Blend Sharpness4.0
Output Path/Game/EQLabs/Materials

Settings are persisted to [Project]/Saved/EQLabs/Settings/LayeredTexturePaintSuite.json.


  • Splat tabUTexture2D (the splat map) + UMaterialFunction (the layer-blend function)
  • Vertex Color tab — modifies vertex colors on selected meshes (undoable). Optionally exports JSON to disk.
  • Tri-Planar tabUMaterialFunction (tri-planar projection)

  • Splat-map Layer Count is capped at 4 — only RGBA channels are supported. For more layers, chain multiple splat maps.
  • Vertex Color blur is mesh-topology-dependent — meshes with poor topology get uneven blur results
  • Tri-planar blend sharpness too low gives mushy transitions48 is typical; below 2 looks washed out
  • Display name is “Texture Paint Suite” — internal class name and tool ID still LayeredTexturePaintSuite for registration continuity
  • Vertex color edits are undoable — wrapped in ScopedTransaction. Ctrl+Z reverses.


Report an issue with this tool

Opens our feedback form in a new tab with the tool name pre-filled.