Table of Contents

Class PBRMaterialCore

Namespace
HelixToolkit.SharpDX.Model
Assembly
HelixToolkit.SharpDX.dll
public class PBRMaterialCore : MaterialCore, IMaterial, INotifyPropertyChanged
Inheritance
PBRMaterialCore
Implements
Inherited Members
Extension Methods

Properties

AlbedoColor

Gets or sets the color of the albedo.

public Color4 AlbedoColor { get; set; }

Property Value

Color4

The color of the albedo.

AlbedoMap

Gets or sets the albedo map.

public TextureModel? AlbedoMap { get; set; }

Property Value

TextureModel

The albedo map.

AlbedoMapFilePath

Gets or sets the albedo map file path. Used for export only

public string AlbedoMapFilePath { get; set; }

Property Value

string

The albedo map file path.

AmbientOcclusionFactor

Gets or sets the ambient occlusion factor. If RMA map is used, for each pixel, ambient occlusion factor = AmbientOcclusionFactor * RMA map R Channel

public float AmbientOcclusionFactor { get; set; }

Property Value

float

The ambient occlusion factor.

AmbientOcculsionMap

Gets or sets the separate Ambient Occlusion map. glTF2 defines occlusion as R channel, roughness as G channel, metalness as B channel. If provides RMA map in one texture, set both RoughnessMetallicMap and AmbientOcculsionMap to the same texture.

public TextureModel? AmbientOcculsionMap { get; set; }

Property Value

TextureModel

The ao map.

AmbientOcculsionMapFilePath

Gets or sets the ao map file path.

public string AmbientOcculsionMapFilePath { get; set; }

Property Value

string

The ao map file path.

ClearCoatRoughness

Gets or sets the clear coat roughness.

public float ClearCoatRoughness { get; set; }

Property Value

float

The clear coat roughness.

ClearCoatStrength

Gets or sets the clear coat strength.

public float ClearCoatStrength { get; set; }

Property Value

float

The clear coat strength.

DisplacementMap

Gets or sets the DisplacementMap.

public TextureModel? DisplacementMap { get; set; }

Property Value

TextureModel

DisplacementMap

DisplacementMapFilePath

Gets or sets the displacement map file path. Only for export

public string DisplacementMapFilePath { get; set; }

Property Value

string

The displacement map file path.

DisplacementMapSampler

Gets or sets the DisplacementMapSampler.

public SamplerStateDescription DisplacementMapSampler { get; set; }

Property Value

SamplerStateDescription

DisplacementMapSampler

DisplacementMapScaleMask

Gets or sets the DisplacementMapScaleMask.

public Vector4 DisplacementMapScaleMask { get; set; }

Property Value

Vector4

DisplacementMapScaleMask

EmissiveColor

Gets or sets the color of the emissive.

public Color4 EmissiveColor { get; set; }

Property Value

Color4

The color of the emissive.

EmissiveMap

Gets or sets the emissive map.

public TextureModel? EmissiveMap { get; set; }

Property Value

TextureModel

The emissive map.

EmissiveMapFilePath

Gets or sets the emissive map file path. Only for export

public string EmissiveMapFilePath { get; set; }

Property Value

string

The emissive map.

EnableAutoTangent

Gets or sets a value indicating whether [enable automatic tangent].

public bool EnableAutoTangent { get; set; }

Property Value

bool

true if [enable automatic tangent]; otherwise, false.

EnableFlatShading

Gets or sets a value indicating whether [enable flat shading].

public bool EnableFlatShading { get; set; }

Property Value

bool

true if [enable flat shading]; otherwise, false.

EnableTessellation

public bool EnableTessellation { get; set; }

Property Value

bool

IBLSampler

Gets or sets the IBL sampler.

public SamplerStateDescription IBLSampler { get; set; }

Property Value

SamplerStateDescription

The IBL sampler.

IrradianceMap

Gets or sets the irradiance map.

public TextureModel? IrradianceMap { get; set; }

Property Value

TextureModel

The irradiance map.

IrradianceMapFilePath

Gets or sets the irradiance map file path. Only for export

public string IrradianceMapFilePath { get; set; }

Property Value

string

The irradiance map file path.

MaxDistanceTessellationFactor

Gets or sets the tessellation factor at MaxDistanceTessellationFactor

public float MaxDistanceTessellationFactor { get; set; }

Property Value

float

The maximum distance tessellation factor.

MaxTessellationDistance

public float MaxTessellationDistance { get; set; }

Property Value

float

MeshType

public MeshTopologyEnum MeshType { get; set; }

Property Value

MeshTopologyEnum

MetallicFactor

Gets or sets the metallic factor. If RMA map is used, for each pixel, metallic factor = MetallicFactor * RMA map B Channel

public float MetallicFactor { get; set; }

Property Value

float

The metallic factor.

MinDistanceTessellationFactor

Gets or sets the tessellation factor at MinTessellationDistance.

public float MinDistanceTessellationFactor { get; set; }

Property Value

float

The minimum distance tessellation factor.

MinTessellationDistance

public float MinTessellationDistance { get; set; }

Property Value

float

NormalMap

Gets or sets the NormalMap.

public TextureModel? NormalMap { get; set; }

Property Value

TextureModel

NormalMap

NormalMapFilePath

Gets or sets the normal map file path. Only for export

public string NormalMapFilePath { get; set; }

Property Value

string

The normal map file path.

ReflectanceFactor

Gets or sets the reflectance factor.

public float ReflectanceFactor { get; set; }

Property Value

float

The reflectance factor.

RenderAlbedoMap

public bool RenderAlbedoMap { get; set; }

Property Value

bool

RenderAmbientOcclusionMap

public bool RenderAmbientOcclusionMap { get; set; }

Property Value

bool

RenderDisplacementMap

public bool RenderDisplacementMap { get; set; }

Property Value

bool

RenderEmissiveMap

Gets or sets a value indicating whether [render emissive map].

public bool RenderEmissiveMap { get; set; }

Property Value

bool

true if [render emissive map]; otherwise, false.

RenderEnvironmentMap

public bool RenderEnvironmentMap { get; set; }

Property Value

bool

RenderIrradianceMap

Gets or sets a value indicating whether [render irrandiance map].

public bool RenderIrradianceMap { get; set; }

Property Value

bool

true if [render irrandiance map]; otherwise, false.

RenderNormalMap

public bool RenderNormalMap { get; set; }

Property Value

bool

RenderRoughnessMetallicMap

public bool RenderRoughnessMetallicMap { get; set; }

Property Value

bool

RenderShadowMap

public bool RenderShadowMap { get; set; }

Property Value

bool

RoughnessFactor

Gets or sets the roughness factor. If RMA map is used, for each pixel, roughness factor = RoughnessFactor * RMA map G Channel

public float RoughnessFactor { get; set; }

Property Value

float

The roughness factor.

RoughnessMetallicMap

Gets or sets the Roughness, Metallic map. glTF2 defines occlusion as R channel, roughness as G channel, metalness as B channel. If provides RMA map in one texture, set both RoughnessMetallicMap and AmbientOcculsionMap to the same texture.

public TextureModel? RoughnessMetallicMap { get; set; }

Property Value

TextureModel

The rma map.

RoughnessMetallicMapFilePath

Gets or sets the rma map file path. Only for export

public string RoughnessMetallicMapFilePath { get; set; }

Property Value

string

The rma map file path.

SurfaceMapSampler

Gets or sets the surface map sampler.

public SamplerStateDescription SurfaceMapSampler { get; set; }

Property Value

SamplerStateDescription

The surface map sampler.

UVTransform

Gets or sets the uv transform.

public UVTransform UVTransform { get; set; }

Property Value

UVTransform

The uv transform.

VertexColorBlendingFactor

Gets or sets the vert color blending factor. Diffuse = (1- VertexColorBlendingFactor) * Diffuse + VertexColorBlendingFactor * Vertex Color

public float VertexColorBlendingFactor { get; set; }

Property Value

float

The vert color blending factor.

Methods

CreateMaterialVariables(IEffectsManager, IRenderTechnique)

Creates the material variables.

public override MaterialVariable CreateMaterialVariables(IEffectsManager manager, IRenderTechnique technique)

Parameters

manager IEffectsManager

The manager.

technique IRenderTechnique

The technique.

Returns

MaterialVariable