Class Material

    Definition

    Namespace:
    Tizen.NUI.Scene3D
    Assembly:
    Tizen.NUI.Scene3D.dll

    Class for setting Material properties of 3D models.

    public class Material : BaseHandle, IDynamicResourceHandler, INameScope, System.IDisposable
    Inheritance
    object
    BindableObject
    Element
    BaseHandle
    Material
    Implements
    IDynamicResourceHandler
    INameScope
    System.IDisposable
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    Examples
    Material material = new Material();
    ModelPrimitive modelPrimitive = new ModelPrimitive();
    modelPrimitive.Material = material;

    Constructors

    View Source

    Material()

    Create an initialized Material.

    Declaration
    public Material()
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    Material(Material)

    Copy constructor.

    Declaration
    public Material(Material material)
    Parameters
    Type Name Description
    Material material

    Source object to copy.

    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    Properties

    View Source

    AlphaCutoff

    Property for the alpha cutoff value of the material.

    Declaration
    public float AlphaCutoff { get; set; }
    Property Value
    Type Description
    float
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    AlphaMode

    Property for the alpha blending mode of the material.

    Declaration
    public MaterialAlphaModeType AlphaMode { get; set; }
    Property Value
    Type Description
    MaterialAlphaModeType
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    BaseColorFactor

    Property for the base color factor of the material.

    Declaration
    public Vector4 BaseColorFactor { get; set; }
    Property Value
    Type Description
    Vector4
    Remarks

    This factor is multiplied with the base color of the material.

    View Source

    BaseColorUrl

    Property for the URL of the base color texture.

    Declaration
    public string BaseColorUrl { get; set; }
    Property Value
    Type Description
    string
    Remarks

    This texture represents the base color of the material.

    View Source

    DepthIndex

    Property to define rendering order.

    Declaration
    public int DepthIndex { get; set; }
    Property Value
    Type Description
    int
    Remarks

    Depth index is used to defind rendering order. Basically, a Renderer that has smaller depth index is rendered earlier. In the ordinary DALI UI components has 0 as depth index by default. (For the case of Toolkit::Control, its renderer has depth index value between [-20, 20] as fallowing the renderer's purpose)

    In the Scene3D cases, the rendering order of each Renderer may need to be manually defined to match scene developer's intent. Scene3D::DepthIndex::Ranges could be used to adjust rendering order between 3D Scene content. Or it also could be used to manage UI component in 3D Scene independently.

    Changing the depth index only affects the rendering order, and does not mean that objects drawn later will be drawn on top. To compute final rendering order, whether the object is opaque or non-opaque takes precedence over the depth index. Changing the rendering order among translucent objects has a significant impact on the rendering results.

    The predefined depth index range is definded in MaterialDepthIndexRange.

    View Source

    DoubleSided

    Property for the double sided material flag.

    Declaration
    public bool DoubleSided { get; set; }
    Property Value
    Type Description
    bool
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    EmissiveFactor

    Property for the emissive factor of the material.

    Declaration
    public Vector3 EmissiveFactor { get; set; }
    Property Value
    Type Description
    Vector3
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    EmissiveUrl

    Property for the URL of the emissive texture.

    Declaration
    public string EmissiveUrl { get; set; }
    Property Value
    Type Description
    string
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    Ior

    Property for the index of refraction of the material.

    Declaration
    public float Ior { get; set; }
    Property Value
    Type Description
    float
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    MetallicFactor

    Property for the metallic factor of the material.

    Declaration
    public float MetallicFactor { get; set; }
    Property Value
    Type Description
    float
    Remarks

    This factor is multiplied with the metallicness of the material.

    View Source

    MetallicRoughnessUrl

    Property for the URL of the metallic roughness texture.

    Declaration
    public string MetallicRoughnessUrl { get; set; }
    Property Value
    Type Description
    string
    Remarks

    This texture represents the metallicness and roughness of the material.

    View Source

    Name

    The name of the Material.

    Declaration
    public string Name { get; set; }
    Property Value
    Type Description
    string
    Remarks

    This Name property is for setting the name of Material. The name can be used to identify the Material.

    View Source

    NormalScale

    Property for the scale of the normal texture.

    Declaration
    public float NormalScale { get; set; }
    Property Value
    Type Description
    float
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    NormalUrl

    Property for the URL of the normal texture.

    Declaration
    public string NormalUrl { get; set; }
    Property Value
    Type Description
    string
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    OcclusionStrength

    Property for the strength of the occlusion texture.

    Declaration
    public float OcclusionStrength { get; set; }
    Property Value
    Type Description
    float
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    OcclusionUrl

    Property for the URL of the occlusion texture.

    Declaration
    public string OcclusionUrl { get; set; }
    Property Value
    Type Description
    string
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    RoughnessFactor

    Property for the roughness factor of the material.

    Declaration
    public float RoughnessFactor { get; set; }
    Property Value
    Type Description
    float
    Remarks

    This factor is multiplied with the roughness of the material.

    View Source

    SpecularColorFactor

    Property for the specular color factor of the material.

    Declaration
    public Vector3 SpecularColorFactor { get; set; }
    Property Value
    Type Description
    Vector3
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    SpecularColorUrl

    Property for the URL of the specular color texture.

    Declaration
    public string SpecularColorUrl { get; set; }
    Property Value
    Type Description
    string
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    SpecularFactor

    Property for the specular factor of the material.

    Declaration
    public float SpecularFactor { get; set; }
    Property Value
    Type Description
    float
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    SpecularUrl

    Property for the URL of the specular texture.

    Declaration
    public string SpecularUrl { get; set; }
    Property Value
    Type Description
    string
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    Methods

    View Source

    GetSampler(MaterialTextureType)

    Gets the sampler of the ModelNode object for the specified texture type.

    Declaration
    public Sampler GetSampler(MaterialTextureType textureType)
    Parameters
    Type Name Description
    MaterialTextureType textureType

    The TextureType of the sampler to get.

    Returns
    Type Description
    Sampler

    The Sampler object of the ModelNode object for the specified texture type.

    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    GetTexture(MaterialTextureType)

    Gets the texture of the ModelNode object for the specified texture type.

    Declaration
    public Texture GetTexture(MaterialTextureType textureType)
    Parameters
    Type Name Description
    MaterialTextureType textureType

    The TextureType of the texture to get.

    Returns
    Type Description
    Texture

    The Texture object of the ModelNode object for the specified texture type.

    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    ReleaseSwigCPtr(HandleRef)

    Release swigCPtr.

    Declaration
    protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr)
    Parameters
    Type Name Description
    System.Runtime.InteropServices.HandleRef swigCPtr
    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    SetSampler(MaterialTextureType, Sampler)

    Sets the sampler of the ModelNode object for the specified texture type.

    Declaration
    public void SetSampler(MaterialTextureType textureType, Sampler sampler)
    Parameters
    Type Name Description
    MaterialTextureType textureType

    The TextureType of the sampler to set.

    Sampler sampler

    The Sampler object to set.

    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    View Source

    SetTexture(MaterialTextureType, Texture)

    Sets the texture of the ModelNode object for the specified texture type.

    Declaration
    public void SetTexture(MaterialTextureType textureType, Texture texture)
    Parameters
    Type Name Description
    MaterialTextureType textureType

    The TextureType of the texture to set.

    Texture texture

    The Texture object to set.

    Remarks

    This Material class is for setting Material properties of 3D models. This Material supports properties and textures for PBR. Also, Material can be shared with multiple ModelPrimitives and if the value is modified, the rendering results of all ModelPrimitives using this Material will be changed.

    Implements

    IDynamicResourceHandler
    INameScope
    System.IDisposable

    Extension Methods

    EXamlExtensions.LoadFromEXamlByRelativePath<T>(T, string)
    Extensions.LoadFromXaml<TXaml>(TXaml, string)
    Extensions.LoadFromXaml<TXaml>(TXaml, Type)
    Extensions.LoadFromXamlFile<TXaml>(TXaml, string)
    • View Source
    Back to top Copyright © 2016-2025 Samsung
    Generated by DocFX