What problem does it solve? Working with Unreal Engine materials requires knowing the correct class hierarchy (UMaterial, UMaterialInstanceConstant, UMaterialInstanceDynamic), the right domain/blend/shading model settings, and the exact C++ API for runtime parameter changes — mistakes like editing a MIC at runtime or mistyping a parameter name silently fail or cause recompile hitches. ## Core Features & Use Cases - Material class hierarchy and settings: Maps UMaterialInterface, UMaterial, MIC, and MID with exact UE 5.8 engine source locations, plus tables for material domain, blend mode, and shading model enums. - Runtime parameter control in C++: Provides working code for CreateDynamicMaterialInstance, SetScalarParameterValue, SetVectorParameterValue, SetTextureParameterValue, and the index-cache optimization for high-frequency updates. - Material parameter collections: Explains global scene-wide parameters via UKismetMaterialLibrary, including the two-collection limit and 1024-parameter ceiling. - Use Case: A character takes damage and needs a red tint flash — use this Skill to create a MID in BeginPlay, hold it in a UPROPERTY, and call SetScalarParameterValue with the correct parameter name. ## Quick Start Use the ue-materials-and-shaders skill to create a dynamic material instance on my mesh component and change its DamageAmount scalar parameter at runtime.