Skip to main content
Version: 1.2.0

Authoring Materials with the Agent

The Material toolsets let the agent create materials and material instances, edit the material graph, and set parameters — so you can go from "make me a glowing red material" to a finished, assignable asset without opening the material editor.

What the agent can do

  • Create materials at a content path, choosing a shading model and blend mode.
  • Edit the graph — add expression nodes (constants, textures, scalar/vector parameters, math) and connect them to material outputs (Base Color, Metallic, Roughness, Emissive, Normal, etc.).
  • Expose parameters so values can be overridden per instance.
  • Create Material Instances from a parent material and set their parameter overrides.
  • Assign materials to actors/meshes (via the Actors toolset) once created.

These tools are engine-reflected, so names follow the Verb+Noun pattern (create / add / connect / set). Call describe_toolset on the Materials toolset for exact signatures.

Typical workflows

Create a parameterized base material

"Create a material /Game/Materials/M_Glow. Add a vector parameter Color and a scalar parameter Intensity, multiply them, and feed the result into Emissive. Set Base Color to a dark grey constant."

The agent creates the material, adds the parameter nodes, wires the multiply into the Emissive output, and saves it — ready to instance.

Spin up instances

"Make three instances of M_Glow — red, green, blue — at Intensity 5."

The agent creates MI_Glow_Red/Green/Blue, overriding Color and Intensity on each. No graph editing needed because the parameters already exist.

Tweak an existing material

"On M_Glow, raise the default Intensity to 8 and add a Fresnel into Emissive."

Tips

  • Expose what you want to tweak as parameters. Scalar/vector/texture parameters are what make Material Instances useful — ask the agent to parameterize values you plan to vary, rather than hard-coding constants.
  • Match shading model to intent. Emissive glow, translucency, and subsurface need the right shading model/blend mode; state it up front.
  • Instances are cheaper to iterate. Once a base material exposes parameters, prefer creating/editing instances over re-editing the graph.
  • Save before assigning. The agent should save the material/instance before another tool assigns it to a mesh.

Example via call_tool

{ "method": "tools/call", "params": {
"name": "call_tool",
"arguments": {
"tool": "CreateMaterialInstance",
"args": {
"parent": "/Game/Materials/M_Glow",
"path": "/Game/Materials/MI_Glow_Red"
}
} } }

Tool/argument names are illustrative — confirm them with describe_toolset for the Materials toolset in your editor.