Skip to content

Material override runtime

Serialization

The editor serializes supported material scalar/color fields and texture transform metadata for every material slot attached to inspected meshes.

Matching

Overrides identify a mesh by name, index, and optionally UUID, then identify a material slot by index. Stable asset naming is the most robust strategy across model re-exports.

Replacement texture loading

For textures marked replacement, the runtime looks up the exported texture name in textureUrls. It loads the mapped URL, restores color space and UV properties, assigns the correct slot, and marks the material for update.

Effect state

CinematicEffectDriver collects unique materials, records original PBR and texture state, and mutates only captured properties. Switching effect type first restores originals to avoid accumulated drift.

Extension point

Custom shader materials are not serialized generically. Add a project-specific material adapter or use an onLoad callback to configure them after the runtime scene is available.

Released under the MIT License.