Class MaterialBase<TExtensions, TNormalTextureInfo, TOcclusionTextureInfo, TPbrMetallicRoughness, TTextureInfo, TTextureInfoExtensions>
The material appearance of a primitive.
Inheritance
Inherited Members
Namespace: GLTFast.Schema
Assembly: glTFast.dll
Syntax
[Serializable]
public abstract class MaterialBase<TExtensions, TNormalTextureInfo, TOcclusionTextureInfo, TPbrMetallicRoughness, TTextureInfo, TTextureInfoExtensions> : MaterialBase where TExtensions : MaterialExtensions where TNormalTextureInfo : NormalTextureInfoBase where TOcclusionTextureInfo : OcclusionTextureInfoBase where TPbrMetallicRoughness : PbrMetallicRoughnessBase where TTextureInfo : TextureInfoBase where TTextureInfoExtensions : TextureInfoExtensions
Type Parameters
Name | Description |
---|---|
TExtensions | Material extensions type |
TNormalTextureInfo | normalTextureInfo type |
TOcclusionTextureInfo | occlusionTextureInfo type |
TPbrMetallicRoughness | PBR Metallic Roughness type |
TTextureInfo | textureInfo type |
TTextureInfoExtensions | textureInfo extensions type |
Fields
emissiveTexture
The emissive map controls the color and intensity of the light being emitted by the material. This texture contains RGB components in sRGB color space. If a fourth component (A) is present, it is ignored.
Declaration
public TTextureInfo emissiveTexture
Field Value
Type | Description |
---|---|
TTextureInfo |
extensions
Material extensions.
Declaration
public TExtensions extensions
Field Value
Type | Description |
---|---|
TExtensions |
normalTexture
A tangent space normal map. Each texel represents the XYZ components of a normal vector in tangent space.
Declaration
public TNormalTextureInfo normalTexture
Field Value
Type | Description |
---|---|
TNormalTextureInfo |
occlusionTexture
The occlusion map is a greyscale texture, with white indicating areas that should receive full indirect lighting and black indicating no indirect lighting.
Declaration
public TOcclusionTextureInfo occlusionTexture
Field Value
Type | Description |
---|---|
TOcclusionTextureInfo |
pbrMetallicRoughness
A set of parameter values that are used to define the metallic-roughness material model from Physically-Based Rendering (PBR) methodology.
Declaration
public TPbrMetallicRoughness pbrMetallicRoughness
Field Value
Type | Description |
---|---|
TPbrMetallicRoughness |
Properties
EmissiveTexture
The emissive map controls the color and intensity of the light being emitted by the material. This texture contains RGB components in sRGB color space. If a fourth component (A) is present, it is ignored.
Declaration
public override TextureInfoBase EmissiveTexture { get; }
Property Value
Type | Description |
---|---|
TextureInfoBase |
Overrides
Extensions
Material extensions.
Declaration
public override MaterialExtensions Extensions { get; }
Property Value
Type | Description |
---|---|
MaterialExtensions |
Overrides
NormalTexture
A tangent space normal map. Each texel represents the XYZ components of a normal vector in tangent space.
Declaration
public override NormalTextureInfoBase NormalTexture { get; }
Property Value
Type | Description |
---|---|
NormalTextureInfoBase |
Overrides
OcclusionTexture
The occlusion map is a greyscale texture, with white indicating areas that should receive full indirect lighting and black indicating no indirect lighting.
Declaration
public override OcclusionTextureInfoBase OcclusionTexture { get; }
Property Value
Type | Description |
---|---|
OcclusionTextureInfoBase |
Overrides
PbrMetallicRoughness
A set of parameter values that are used to define the metallic-roughness material model from Physically-Based Rendering (PBR) methodology.
Declaration
public override PbrMetallicRoughnessBase PbrMetallicRoughness { get; }
Property Value
Type | Description |
---|---|
PbrMetallicRoughnessBase |