Geometry attributes

    The material geometry attributes define the shape of a material.

    Real-time tessellation uses a HW feature of the GPU to massively subdivide triangles. This increases the realism and potential of deformations of the surface geometry.

    You can choose none, flat tessellation, or point normal tesellation.

    This option tessellates the mesh uniformly.

    media/material-attributes-5.png

    No tessellationFlat tessellation
    media/material-attributes-7.png
    PropertyDescription
    Triangle sizeThe size of a tessellated triangle in screen-space units
    Adjacent edges averageAdjust the triangle size values from the average of adjacent edges values

    Point normal tessellation

    This option tessellates the mesh using the curvature provided by the mesh normals.

    The images below show how point normal tessellation adds extra triangles while taking the curvature of the mesh into account:

    PropertyDescription
    Triangle sizeThe size of a tessellated triangle in screen-space units
    Adjacent edge averageAdjust the triangle size and normal curvature values from the average of adjacent edge values

    Under the Displacement properties, you can specify displacement map. This displaces the geometry of the mesh.

    media/material-attributes-10.png

    Depending on the stage at which the displacement is applied, the results can be very different:

    Displacement with vertex shaderTessellation with displacement
    media/material-attributes-12.png

    Under the Surface properties, you can define a to define macro surface normals. The normal map provides per-pixel normal perturbation of the normal of the mesh. Normal maps create the appearance of bumps and indents in the mesh:

    FlatUsing a normal map
    media/material-attributes-16.png
    PropertyDescription
    Normal mapThe normal map color provider
    Scale and offsetInterpret values from the texture as positive values ranging from to 1.0. The shader applies a scale to get the range -1.0 to .
    Reconstruct ZIf there's no Z component in the texture, reconstruct it from the X and Y components. This assumes that X2 + Y2 + Z2 = 1 and that Z is always positive, so no normal vector can point to the back side of the surface. We recommend you enable this option, as Xenko might remove the Z component when you compress normal maps.

    For more information about normal maps, see the normal maps page.

    Under the Micro surface setting, you can provide a gloss map to provide per-pixel information for gloss.

    If you select Float:

    • a value of 1.0 means the surface is highly glossy (the coarse normal isn't perturbed)
    • a value of 0.0 means the surface is very rough (the coarse normal is highly perturbed in several directions)The screenshots below show different levels of gloss on a material:

    • Specular Metalness = 1.0, GGX
    PropertyDescription
    Gloss mapThe gloss map color provider
    InvertInverts the gloss value (eg a value of produces zero gloss instead of maximum). This effectively turns the gloss value into a roughness value, as used in other game engines

    If you have local reflections enabled, the scene is reflected in materials with a gloss map value higher than the threshold you specify in the local reflections properties. For more information, see .