Yomin - LLM Material

๐ŸŽฏ One chat generated Material.

"Use llm-material to generate a [glass / metal / hologram / fabric] material for [your model]."

๐Ÿค– Or via Agent Online โ€” if you have LLMEasyShell / LLMEasyShellLite installed, invoke the auto-registered C++ ability material to drive this end-to-end from any LLM agent. Material skill + Agent skill are online in the skill repo.

๐Ÿ“š Tutorial: LLM Material - DSL Schema Guide ยท ๐Ÿ›  Skill Repo: github.com/ituiyuio/Yomin-Fab-LLM-Unreal-Pluagin-Skill

Features:

โœ… One JSON, Complete Material - Graph, nodes, parameters, and Substrate BSDF generated from a single .llmmat file

โœ… LLM-First Design - AI outputs JSON directly, no Material Editor knowledge required

โœ… Bidirectional Conversion - JSON โ†’ Material, Material โ†’ JSON, perfect roundtrip for any existing asset

โœ… 30+ Expression Nodes - Math, Constants, Textures, Parameters, Coordinates, Custom HLSL โ€” all reflectively discovered

โœ… UE5 Substrate Support - Slab / Hair / Unlit / Eye / Water BSDFs + VerticalLayering / HorizontalMixing / Add / Weight composition

โœ… Custom HLSL Functions - Inline .ush shader code or external header refs, type-safe

โœ… Auto-Layout (Sugiyama Algorithm) - Imported nodes are laid out by topological order โ€” no manual untangling

โœ… Three-Panel Editor + Live Preview - File list, JSON editor, asset preview side-by-side; one-click Generate

๐Ÿ“ฆ File Formats:

.llmmat (JSON), .llmmatschema (Schema), Material UAsset

Technical Information

Version: Unreal Engine 5.7+

Dependencies: EditorScriptingUtilities (engine plugin). Soft-depends on LLMEasyShell / LLMEasyShellLite โ€” if installed, the material shell command auto-registers; the GUI panel works fully without them.

Modules: LLMMaterial (Runtime), LLMMaterialEditor (Editor)

Number of Blueprints: 0

Number of C++ Classes: ~21

Network Replicated: No

Documentation Link: Documentation.md in plugin folder

Example Project: Config/Examples/ folder contains .llmmat example files

Supported Platforms: Windows, Mac, Linux

Overview

The Problem

Traditional UE Material development is tedious:

  • Drag expression nodes one by one in the Material Editor

  • Wire pins by hand with no type validation

  • Set parameters in the details panel, one at a time

  • Substrate BSDF authoring is layered, confusing, error-prone

  • No AI integration, no JSON-external definition

  • Hard to version control material graphs

The Solution

LLMMaterial changes everything. One JSON file defines:

  • Material domain, blend mode, shading model

  • All expression nodes with their properties

  • All connections between node pins

  • Substrate BSDF stack (Slab + VerticalLayering + ...)

LLM outputs the JSON. Plugin generates the Material. Done.

Example

{ "name": "M_EmissiveGlass", "domain": "Surface", "blendMode": "Translucent", "shadingModel": "DefaultLit", "nodes": [ { "type": "Constant3Vector", "name": "Tint", "properties": { "Constant": { "R": 0.2, "G": 0.8, "B": 1.0 } } }, { "type": "ScalarParameter", "name": "Emissive", "properties": { "DefaultValue": 5.0 } }, { "type": "Multiply", "name": "Glow", "inputs": ["Tint", "Emissive"] } ], "output": { "EmissiveColor": "Glow", "Opacity": 0.4 } }

Import this JSON โ†’ Get a fully functional Material with all nodes wired and parameters exposed.

Workflow
  1. LLM generates .llmmat - AI outputs JSON with your material definition

  2. Open Panel - Menu โ†’ Window โ†’ LLMMaterial

  3. Generate - One click creates the Material asset

  4. Iterate - Modify JSON, regenerate, or export an existing material back to .llmmat

Supported Material Domains

DomainDescriptionSurfaceSurface material (default)PostProcessPost-process materialUserInterfaceUI materialVirtualTextureVirtual texture

Supported Blend Modes

Opaque ยท Masked ยท Translucent ยท Additive ยท Modulate

Supported Shading Models

DefaultLit ยท Unlit ยท Subsurface ยท SubsurfaceProfile ยท ClearCoat ยท Hair ยท Cloth ยท Eye ยท Strata (Substrate)

Node Categories

CategoryNodesMathAdd, Subtract, Multiply, Divide, Power, Sine, Cosine, Abs, Clamp, Lerp, Max, MinConstantsConstant, Constant2Vector, Constant3Vector, Constant4VectorTexturesTextureSample, TextureCoordinateParametersScalarParameter, VectorParameter, TextureSampleParameterCoordinateVertexColor, WorldPosition, CameraPosition, TimeToolsComponentMask, AppendVector, DesaturationCustomCustom โ€” HLSL via Code or HeaderRef

Substrate Support

CategoryTypesBSDFsSubstrateSlabBSDF, SubstrateHairBSDF, SubstrateUnlitBSDF, SubstrateEyeBSDF, SubstrateSingleLayerWaterBSDFCompositionVerticalLayering, HorizontalMixing, Add, Weight, Select

Successful development to you!

LLMMaterial v1.1.0 | YominUnreal