Search Results for

    Show / Hide Table of Contents

    Material Properties

    This page breaks down all the available material properties. These options are accesible per material via Material Editor window.

    Properties

    General

    General

    Property Description
    Domain Specifies how the material is going to be used. Certain materials used for postFx or 2D rendering requrie additional instructions for the rendering pipeline to be generated. Because of this, it's important to specify a material domain that covers those cases. Possible options:
    OptionDescription
    SurfaceThe surface material. Can be used to render the scene geometry including models and skinned models.
    Post ProcessThe Post Process Material. Can be used to perform custom post-processing of the rendered frame.
    DecalThe Decal Material. Can be used to apply custom overlay or surface modifications to the object surfaces in the world.
    GUIThe GUI shader. Can be used to draw custom control interface elements or to add custom effects to the GUI.
    TerrainThe terrain shader. Can be used only with landscape chunks geometry that use optimized vertex data and support multi-layered blending.
    ParticleThe particle shader. Can be used only with particles geometry (sprites, trails and ribbons). Supports reading particle data on a GPU.
    DeformableThe deformable shader. Can be used only with objects that can be deformed (eg. spline models).
    Shading Model Specifies how material inputs and properties are combined to result the final surface color. Possible options:
    OptionDescription
    UnlitThe unlit material. The Emissive channel is used as an output color. Can perform custom lighting operations or just glow. Won't be affected by the lighting pipeline.
    LitThe default lit material. The most common choice for material surfaces.
    SubsurfaceThe subsurface material. Intended for materials like wax or skin that need light scattering to transport simulation through the object.
    To learn more about shading models see the related documentation here.
    Blend Mode Specifies how to blend the material with the environment. Possible options:
    OptionDescription
    OpaqueThe opaque material. Used during GBuffer pass rendering. This is the default value.
    TransparentThe transparent material. Used during Forward pass rendering.
    AdditiveThe additive blend. Material color is used to add to the color of the objects behind the surface. Used during Forward pass rendering.
    MultiplyThe multiply blend. Material color is used to multiply the color of the objects behind the surface. Used during Forward pass rendering.
    To learn more about blend modes see the related documentation here.

    Rendering

    Rendering

    Property Description
    Cull Mode Defines the primitives culling mode used during geometry rendering.
    Wireframe If checked, geometry using this material will be rendered in wireframe mode without a solid triangles fill.
    Depth Test If checked, enables performing depth test during material rendering.
    Depth Write If checked, enables writing to the depth buffer during material rendering.

    Transparency

    Transparency

    Property Description
    Transparent Lighting Mode Transparent material lighting mode. Possible options:
    OptionDescription
    SurfaceDefault directional lighting evaluated per-pixel at the material surface. Use it for semi-transparent surfaces - with both diffuse and specular lighting components active.
    Surface Non-DirectionalNon-directional lighting evaluated per-pixel at the material surface. Use it for volumetric objects such as smoke, rain or dust - only the diffuse lighting term is active (no specular highlights).
    Enable Reflections If checked, enables reflections when rendering the material.
    Enable Screen Space Reflections If checked, enables Screen Space Reflections when rendering the material.
    Enable Fog If checked, enables fog effect when rendering the material.
    Enable Distortion If checked, enables distortion effect when rendering the material.
    Enable Global Illumination If checked, enables sampling Global Illumination in the material (eg. light probes or volumetric lightmap).
    Pixel Normal Offset Refraction Enables refraction offset based on the difference between the per-pixel normal and the per-vertex normal. Useful for large water-like surfaces.
    Opacity Threshold Controls opacity values clipping point.

    Tessellation

    Tessellation

    Property Description
    Tessellation Mode Mesh surface tessellation method. Applies only to materials with Domain set to Surface. Possible options:
    OptionDescription
    NoneNo tessellation.
    FlatFlat tessellation. Also known as dicing tessellation.
    PointNormalPoint normal tessellation.
    PhongGeometric version of Phong normal interpolation, not applied on normals but on the vertex positions.
    Max Tessellation Factor Maximum triangle tessellation factor. Default value is 15. Increase it to unlock even higher tessellation. Higher values reduce rendering performance.

    Miscellaneous

    Miscellaneous

    Property Description
    Use Input World Space Normal If checked, material input normal will be assumed as world-space rather than tangent-space.
    Use Dithered LOD Transition If checked, material uses dithered model LOD transition for smoother LODs switching.
    Mask Threshold Controls mask values clipping point.
    Decal Blending Mode Specifies decal material blending mode. Applies only to materials with Domain set to Decal. Possible options:
    OptionDescription
    TranslucentDecal will be fully blended with the material surface.
    StainDecal color will be blended with the material surface color (using multiplication).
    NormalDecal will blend the normal vector only.
    EmissiveDecal will apply the emissive light only.
    PostFx Location Specifies when render post effect material. Applies only to materials with Domain set to Post Process.Possible options:
    OptionDescription
    After Post Processing PassRender material after post processing pass using LDR input frame.
    Before Post Processing PassRender material before post processing pass using HDR input frame.
    Before Forward PassRender material before forward pass but after GBuffer with HDR input frame.
    After Custom Post EffectsRender material after custom post effects (scripted).
    Before Reflections PassRender material before Reflections pass. After the Light pass. Can be used to implement a custom light type that accumulates lighting to the light buffer.
    After Anti-Aliasing PassRender material after the AA filter pass. Rendering is done to the output backbuffer.

    Parameters

    Parameters

    Every material contains a collection of custom parameters. Those parameters can be accessed from the game logic code or be overriden using Material Instances.

    This section allows adding, editing and removing custom material parameters. Each parameter has a specified type and default value. Material parameters are identified by the name which means it has to be unique in order to prevent misleading.

    To add a new parameter choose a type from the dropdown menu and press the Add parameter button. Then you can right click on the parameter name to rename or delete it.

    To access a material parameter value directly in a graph use Get Parameter. It allows choosing a parameter with a dropdown menu and use its value as shown in a picture below.

    Get Material Parameter

    Attributes

    Every parameter can have a collection of customizable attributes that can customize its display logic in the UI or be used as metadata for other systems (eg. serialization).

    To add an attribute to parameter simply right-click -> Edit attributes, then use the + button to add a new attribute, set the Type to one of the items from the dropdown list, adjust the properties of the atrtribute and hit OK to confirm.

    For instance, the Tooltip Attribute can be used to display a documentation note about the parameter for other users. Range and Slider attributes can help to customize editing scalar values, and Editor Group and Editor Order can organize the list of parameters. To learn about attribute types see this page.

    Parameter Attributes

    • Improve this Doc
    In This Article
    Back to top Copyright © 2012-2024 Wojciech Figat