Table of Contents

Class MaterialClearCoatFeature

Namespace
Stride.Rendering.Materials
Assembly
Stride.Rendering.dll
[DataContract("MaterialClearCoatFeature")]
[Display("Clear coat", null)]
[CategoryOrder(5, "Base paint")]
[CategoryOrder(10, "Metal flakes")]
[CategoryOrder(15, "Clear coat")]
public class MaterialClearCoatFeature : MaterialFeature, IMaterialClearCoatFeature, IMaterialFeature, IMaterialShaderGenerator
Inheritance
MaterialClearCoatFeature
Implements
Inherited Members

Constructors

MaterialClearCoatFeature()

public MaterialClearCoatFeature()

Properties

BasePaintDiffuseMap

Gets or sets the base paint layer diffuse map.

[DataMember(110)]
[Display("Base paint diffuse map", "Base paint")]
public IComputeColor BasePaintDiffuseMap { get; set; }

Property Value

IComputeColor

The diffuse map.

BasePaintGlossinessInvert

Gets or sets a value indicating whether the BasePaintGlossinessMap is invert.

[DataMember(130)]
[Display("Invert gloss", "Base paint")]
public bool BasePaintGlossinessInvert { get; set; }

Property Value

bool

true if invert; otherwise, false.

BasePaintGlossinessMap

Gets or sets the base paint smoothness map.

[DataMember(120)]
[Display("Base paint gloss map", "Base paint")]
[DataMemberRange(0, 1, 0.01, 0.1, 3)]
public IComputeScalar BasePaintGlossinessMap { get; set; }

Property Value

IComputeScalar

The smoothness map.

ClearCoatGlossinessInvert

Gets or sets a value indicating whether the ClearCoatGlossinessMap is invert.

[DataMember(220)]
[Display("Invert gloss", "Clear coat")]
public bool ClearCoatGlossinessInvert { get; set; }

Property Value

bool

true if invert; otherwise, false.

ClearCoatGlossinessMap

Gets or sets the clear coat smoothness map.

[DataMember(210)]
[Display("Clear coat gloss map", "Clear coat")]
[DataMemberRange(0, 1, 0.01, 0.1, 3)]
public IComputeScalar ClearCoatGlossinessMap { get; set; }

Property Value

IComputeScalar

The smoothness map.

ClearCoatMetalnessMap

Gets or sets the clear coat metalness map.

[DataMember(230)]
[Display("Clear coat metalness map", "Clear coat")]
[DataMemberRange(0, 1, 0.01, 0.1, 3)]
public IComputeScalar ClearCoatMetalnessMap { get; set; }

Property Value

IComputeScalar

LODDistance

Gets or sets the distance at which the base paint layer should transition to the metal flakes layer.

[DataMember(100)]
[Display("Layer transition distance", null)]
[DataMemberRange(0.001, 2, 0.01, 0.1, 3)]
public IComputeScalar LODDistance { get; set; }

Property Value

IComputeScalar

The transition distance.

MetalFlakesDiffuseMap

Gets or sets the metal flakes diffuse map.

[DataMember(140)]
[Display("Metal flake diffuse map", "Metal flakes")]
public IComputeColor MetalFlakesDiffuseMap { get; set; }

Property Value

IComputeColor

The diffuse map.

MetalFlakesGlossinessInvert

Gets or sets a value indicating whether this MetalFlakesGlossinessMap is invert.

[DataMember(160)]
[Display("Invert gloss", "Metal flakes")]
public bool MetalFlakesGlossinessInvert { get; set; }

Property Value

bool

true if invert; otherwise, false.

MetalFlakesGlossinessMap

Gets or sets the metal flakes smoothness map.

[DataMember(150)]
[Display("Metal flake gloss map", "Metal flakes")]
[DataMemberRange(0, 1, 0.01, 0.1, 3)]
public IComputeScalar MetalFlakesGlossinessMap { get; set; }

Property Value

IComputeScalar

The smoothness map.

MetalFlakesMetalnessMap

Gets or sets the metal flakes metalness map.

[DataMember(170)]
[Display("Metal flake metalness map", "Metal flakes")]
[DataMemberRange(0, 1, 0.01, 0.1, 3)]
public IComputeScalar MetalFlakesMetalnessMap { get; set; }

Property Value

IComputeScalar

MetalFlakesNormalMap

Gets or sets the normal map used for the metal flakes layer.

[DataMember(180)]
[Display("Metal flake normal map", "Metal flakes")]
public IComputeColor MetalFlakesNormalMap { get; set; }

Property Value

IComputeColor

The normal map.

MetalFlakesScaleAndBias

Gets or sets a value indicating whether to scale by (2,2) and offset by (-1,-1) the normal map.

[DataMember(190)]
[Display("Scale and offset", "Metal flakes")]
public bool MetalFlakesScaleAndBias { get; set; }

Property Value

bool

true if scale and offset this normal map; otherwise, false.

MetalFlakeslIsXYNormal

Gets or sets a value indicating whether the normal is only stored in XY components and Z is assumed to be sqrt(1 - xx - yy).

[DataMember(200)]
[Display("Reconstruct Z", "Metal flakes")]
public bool MetalFlakeslIsXYNormal { get; set; }

Property Value

bool

true if this instance is xy normal; otherwise, false.

OrangePeelIsXYNormal

Gets or sets a value indicating whether the normal is only stored in XY components and Z is assumed to be sqrt(1 - xx - yy).

[DataMember(260)]
[Display("Reconstruct Z", "Clear coat")]
public bool OrangePeelIsXYNormal { get; set; }

Property Value

bool

true if this instance is xy normal; otherwise, false.

OrangePeelNormalMap

Gets or sets the normal map used for the clear coat layer.

[DataMember(240)]
[Display("Orange peel normal map", "Clear coat")]
public IComputeColor OrangePeelNormalMap { get; set; }

Property Value

IComputeColor

The normal map.

OrangePeelScaleAndBias

Gets or sets a value indicating whether to scale by (2,2) and offset by (-1,-1) the normal map.

[DataMember(250)]
[Display("Scale and offset", "Clear coat")]
public bool OrangePeelScaleAndBias { get; set; }

Property Value

bool

true if scale and offset this normal map; otherwise, false.

Methods

GenerateShader(MaterialGeneratorContext)

Generates the shader for the feature.

public override void GenerateShader(MaterialGeneratorContext context)

Parameters

context MaterialGeneratorContext

The context.

MultipassGeneration(MaterialGeneratorContext)

Called during prepass, used to enumerate extra passes.

public override void MultipassGeneration(MaterialGeneratorContext context)

Parameters

context MaterialGeneratorContext

The context.