class
Material ​
Material object that keeps material information used while rendering.
Properties ​
Property | Description |
---|---|
BlendMode | Material blend mode specifies which type of blend function to use to blend materials. The blend mode function will be used while blending layers during material casting. |
MaterialEvaluationShader | The material evaluation shader. |
MaterialGUID | The unique id for this node. |
MaterialType | The material type, used to specify which shader should be used to render the material. |
Name | The name of the Material object. (Inherited from Object) |
OpacityChannel | The name of the channel in the material to be used for Opacity or Transparency. This material property is primarily used in the scene exporters to correctly export opacity, and does *not* determine which channel to use for opacity when casting materials. The channel to be used for opacity during casting is controlled by a setting on the MaterialCaster objects. |
OpacityCutoff | The cutoff value for opacity when using mask blend mode. |
OpacityType | The opacity type determines how the opacity channel of this material is interpreted when casting. To make (0.0->1.0) map to (transparent-opaque), use 'Opacity'. To make (0.0->1.0) map to (opaque-transparent), use 'Transparency' |
UseTangentSpaceNormals | The UseTangentSpaceNormals flag. If set, the normal map has tangent space normals. |
Methods ​
Method | Description |
---|---|
AddMaterialChannel | Add a material channel. |
AddObserver | Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object) |
ChangeTexturePrefixPath | Changes the prefix path (drive, directory) of all matching texture paths in the material, with the new one. This method is useful when external textures are placed in a specific folder, which needs to be moved. |
ConvertHandedness | Converts parameters such as UVTiling and UVOffset in shading networks. |
GetClass | Get the name of the Material class. (Inherited from Object) |
GetMaterialChannelCount | Returns the number of material channels in the material. |
GetMaterialChannelFromIndex | Returns the name of a channel from the index. Note that by adding/removing channels the indices are changed, and this method should only be used for enumeration. |
GetMaterialChannels | Get all unique material channel names in the material. |
GetMaterialChannelsWithTextureInputs | Get all unique material channel names having texture inputs in the material. |
GetShadingNetwork | Get which shading network to use for the material channel. |
HasMaterialChannel | Check if the channel exists within the material. |
IsA | Returns true if Material is a or is a descendant of the class named as the type parameter. (Inherited from Object) |
IsIdenticalTo | Returns true if the material is setup identical to this material. |
IsNull | Returns true if the Material object is invalid. (Inherited from Object) |
IsSameObjectAs | Returns true if the Material object is valid. (Inherited from Object) |
IsTransparent | Returns true if the material *could* be transparent. In other words, returns true IF the BlendMode of the material is not set to opaque, AND there is a non-opaque shading network assigned to the opacity channel. This means materials set to BlendMode::Blend can still return false if they have an opacity channel set that is either empty, or constant and set to an opaque value. This can be used to split transparent and opaque materials before processing, or find materials marked as BlendMode::Blend that don't have to be. |
LoadShadingNetworkFromXML | Save shading network to XML. |
NonNull | Returns true if the Material object is valid. (Inherited from Object) |
PrintInfo | Prints the content/info of the Material object to the log. (Inherited from Object) |
RemoveMaterialChannel | Remove a material channel. |
RemoveObserver | Removes a previously added observer object. (Inherited from Object) |
SaveShadingNetworkToXML | Save shading network to XML. |
SetOpacityFromDiffuseAlpha | Maps the alpha component of the diffuse channel to all the RGBA components in the opacity channel (by using a swizzle node). |
SetShadingNetwork | Set which shading network to use for the material channel. |
Static methods ​
Method | Description |
---|---|
IsClassA | Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object) |
SafeCast | SafeCast makes sure the input object is of a class that can be cast into spMaterial, and if this is the case, returns the object cast into spMaterial. (Inherited from Object) |
Properties details ​
BlendMode ​
Material blend mode specifies which type of blend function to use to blend materials. The blend mode function will be used while blending layers during material casting.
MaterialEvaluationShader ​
The material evaluation shader.
MaterialGUID ​
The unique id for this node.
MaterialType ​
The material type, used to specify which shader should be used to render the material.
Name ​
The name of the Material object. (Inherited from Object)
OpacityChannel ​
The name of the channel in the material to be used for Opacity or Transparency. This material property is primarily used in the scene exporters to correctly export opacity, and does *not* determine which channel to use for opacity when casting materials. The channel to be used for opacity during casting is controlled by a setting on the MaterialCaster objects.
OpacityCutoff ​
The cutoff value for opacity when using mask blend mode.
OpacityType ​
The opacity type determines how the opacity channel of this material is interpreted when casting. To make (0.0->1.0) map to (transparent-opaque), use 'Opacity'. To make (0.0->1.0) map to (opaque-transparent), use 'Transparency'
UseTangentSpaceNormals ​
The UseTangentSpaceNormals flag. If set, the normal map has tangent space normals.
Methods details ​
AddMaterialChannel ​
Add a material channel.
AddObserver ​
Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object)
ChangeTexturePrefixPath ​
Changes the prefix path (drive, directory) of all matching texture paths in the material, with the new one. This method is useful when external textures are placed in a specific folder, which needs to be moved.
ConvertHandedness ​
Converts parameters such as UVTiling and UVOffset in shading networks.
GetClass ​
Get the name of the Material class. (Inherited from Object)
GetMaterialChannelCount ​
Returns the number of material channels in the material.
GetMaterialChannelFromIndex ​
Returns the name of a channel from the index. Note that by adding/removing channels the indices are changed, and this method should only be used for enumeration.
GetMaterialChannels ​
Get all unique material channel names in the material.
GetMaterialChannelsWithTextureInputs ​
Get all unique material channel names having texture inputs in the material.
GetShadingNetwork ​
Get which shading network to use for the material channel.
HasMaterialChannel ​
Check if the channel exists within the material.
IsA ​
Returns true if Material is a or is a descendant of the class named as the type parameter. (Inherited from Object)
IsIdenticalTo ​
Returns true if the material is setup identical to this material.
IsNull ​
Returns true if the Material object is invalid. (Inherited from Object)
IsSameObjectAs ​
Returns true if the Material object is valid. (Inherited from Object)
IsTransparent ​
Returns true if the material *could* be transparent. In other words, returns true IF the BlendMode of the material is not set to opaque, AND there is a non-opaque shading network assigned to the opacity channel. This means materials set to BlendMode::Blend can still return false if they have an opacity channel set that is either empty, or constant and set to an opaque value. This can be used to split transparent and opaque materials before processing, or find materials marked as BlendMode::Blend that don't have to be.
LoadShadingNetworkFromXML ​
Save shading network to XML.
NonNull ​
Returns true if the Material object is valid. (Inherited from Object)
PrintInfo ​
Prints the content/info of the Material object to the log. (Inherited from Object)
RemoveMaterialChannel ​
Remove a material channel.
RemoveObserver ​
Removes a previously added observer object. (Inherited from Object)
SaveShadingNetworkToXML ​
Save shading network to XML.
SetOpacityFromDiffuseAlpha ​
Maps the alpha component of the diffuse channel to all the RGBA components in the opacity channel (by using a swizzle node).
SetShadingNetwork ​
Set which shading network to use for the material channel.
Static methods details ​
IsClassA ​
Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object)
SafeCast ​
SafeCast makes sure the input object is of a class that can be cast into spMaterial, and if this is the case, returns the object cast into spMaterial. (Inherited from Object)