class
MaterialAccessor
public sealed class MaterialAccessor A wrapper to allow the unification of editing materials. This is usually a member on a Component which implements MaterialAccessor.ITarget.
Constructors
MaterialAccessor(ITarget renderer) Create a new material accessor for this object.
Properties
| Name | Type | Description |
|---|---|---|
Count | Int32 | Total number of material slots |
Methods
Material GetOriginal(Int32 i) Get the original material for the specified index.
Boolean HasOverride(Int32 i) Does this index have an override material?
Material GetOverride(Int32 i) Get the override material for this slot. Or null if not set.
Void SetOverride(Int32 i, Material material) Set an override material for this slot. If the material is null, it will clear the override.
Void Apply() Apply to the object. You don't need to call this when setting overrides, as it will automatically apply them to the target when you set them. This is here as a convenience if this object holds data, and you need to apply it to another object that didn't exist when the overrides were originally set, or loaded.
Examples
MaterialAccessor materialAccessor;
[Property]
public MaterialAccessor Materials => materialAccessor ??= new MaterialAccessor( this );