docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class Material

    The material appearance of a primitive.

    Inheritance
    object
    NamedObject
    Material
    Inherited Members
    NamedObject.Name
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Unity.Cloud.Gltfast.Objects
    Assembly: Unity.Cloud.Gltfast.dll
    Syntax
    [MovedFrom(true, "GLTFast.Schema", "glTFast", null)]
    public class Material : NamedObject

    Properties

    AdditionalProperties

    Additional properties on glTF JSON objects. Those properties may have been added by a new, unsupported version of the glTF specification. For extending glTF, please use extensions or extras instead.

    Declaration
    [JsonIgnore]
    public ReadOnlyProperties AdditionalProperties { get; }
    Property Value
    Type Description
    ReadOnlyProperties

    AlphaCutoff

    Specifies the cutoff threshold when in MASK mode. If the alpha value is greater than or equal to this value then it is rendered as fully opaque, otherwise, it is rendered as fully transparent. This value is ignored for other modes.

    Declaration
    [JsonIgnore]
    public float AlphaCutoff { get; set; }
    Property Value
    Type Description
    float

    AlphaMode

    The material's alpha rendering mode enumeration specifying the interpretation of the alpha value of the main factor and texture. In OPAQUE mode, the alpha value is ignored and the rendered output is fully opaque. In MASK mode, the rendered output is either fully opaque or fully transparent depending on the alpha value and the specified alpha cutoff value. In BLEND mode, the alpha value is used to composite the source and destination areas. The rendered output is combined with the background using the normal painting operation (i.e. the Porter and Duff over operator).

    Declaration
    [JsonPropertyName("alphaMode")]
    [JsonConverter(typeof(AlphaModeValueConverter))]
    public EnumOrRawValue<AlphaMode> AlphaMode { get; set; }
    Property Value
    Type Description
    EnumOrRawValue<AlphaMode>

    DoubleSided

    Specifies whether the material is double sided. When this value is false, back-face culling is enabled. When this value is true, back-face culling is disabled and double sided lighting is enabled. The back-face must have its normals reversed before the lighting equation is evaluated.

    Declaration
    [JsonPropertyName("doubleSided")]
    public bool DoubleSided { get; set; }
    Property Value
    Type Description
    bool

    EmissiveFactor

    The RGB components of the emissive color of the material. If an emissiveTexture is specified, this value is multiplied with the texel values.

    Declaration
    [JsonPropertyName("emissiveFactor")]
    [JsonConverter(typeof(ColorConverter))]
    public Color EmissiveFactor { get; set; }
    Property Value
    Type Description
    Color

    EmissiveTexture

    The emissive map controls the color and intensity of the light being emitted by the material. This texture contains RGB components in sRGB color space. If a fourth component (A) is present, it is ignored.

    Declaration
    [JsonPropertyName("emissiveTexture")]
    public TextureInfo EmissiveTexture { get; set; }
    Property Value
    Type Description
    TextureInfo

    Extensions

    Material extensions.

    Declaration
    [JsonPropertyName("extensions")]
    public MaterialExtensions Extensions { get; set; }
    Property Value
    Type Description
    MaterialExtensions

    Extras

    Application-specific data.

    Declaration
    [JsonPropertyName("extras")]
    [JsonConverter(typeof(ExtrasConverter))]
    public ExtrasContainer Extras { get; set; }
    Property Value
    Type Description
    ExtrasContainer
    See Also
    https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#reference-extras

    NormalTexture

    A tangent space normal map. Each texel represents the XYZ components of a normal vector in tangent space.

    Declaration
    [JsonPropertyName("normalTexture")]
    public NormalTextureInfo NormalTexture { get; set; }
    Property Value
    Type Description
    NormalTextureInfo

    OcclusionTexture

    The occlusion map is a greyscale texture, with white indicating areas that should receive full indirect lighting and black indicating no indirect lighting.

    Declaration
    [JsonPropertyName("occlusionTexture")]
    public OcclusionTextureInfo OcclusionTexture { get; set; }
    Property Value
    Type Description
    OcclusionTextureInfo

    PbrMetallicRoughness

    A set of parameter values that are used to define the metallic-roughness material model from Physically-Based Rendering (PBR) methodology.

    Declaration
    [JsonPropertyName("pbrMetallicRoughness")]
    public PbrMetallicRoughness PbrMetallicRoughness { get; set; }
    Property Value
    Type Description
    PbrMetallicRoughness

    RequiresNormals

    True if the material requires the mesh to have normals.

    Declaration
    [JsonIgnore]
    public bool RequiresNormals { get; }
    Property Value
    Type Description
    bool

    RequiresTangents

    True if the material requires the mesh to have tangents.

    Declaration
    [JsonIgnore]
    public bool RequiresTangents { get; }
    Property Value
    Type Description
    bool
    In This Article
    Back to top
    Copyright © 2026 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)