Class CustomMaterial
Hierarchy
- StandardMaterial
- CustomMaterial
Index
Constructors
Properties
- Custom
Parts - Fragment
Shader - Vertex
Shader - _created
Shader Name - _custom
Attributes - _custom
Uniform - _is
Created Shader - _new
Sampler Instances - _new
Uniform Instances - _new
Uniforms - allow
Shader Hot Swapping - alpha
Cut Off - ambient
Color - ambient
Texture - animations
- bump
Texture - check
Ready On Every Call - check
Ready Only Once - clip
Plane - clip
Plane2 - clip
Plane3 - clip
Plane4 - clip
Plane5 - clip
Plane6 - custom
Shader Name Resolve - decal
Map - depth
Function - detail
Map - diffuse
Color - diffuse
Fresnel Parameters - diffuse
Texture - disable
Color Write - disable
Depth Write - disable
Lighting - do
Not Serialize - emissive
Color - emissive
Fresnel Parameters - emissive
Texture - force
Depth Write - get
Render Target Textures - id
- index
Of Refraction - inspectable
Custom Properties - invert
Normal MapX - invert
Normal MapY - invert
RefractionY - lightmap
Texture - link
Emissive With Diffuse - max
Simultaneous Lights - metadata
- name
- on
Compiled - on
Dispose Observable - on
Error - opacity
Fresnel Parameters - opacity
Texture - parallax
Scale Bias - plugin
Manager - point
Size - pre
Pass Configuration - reflection
Fresnel Parameters - reflection
Texture - refraction
Fresnel Parameters - refraction
Texture - reserved
Data Store - roughness
- separate
Culling Pass - shadow
Depth Wrapper - side
Orientation - specular
Color - specular
Power - specular
Texture - state
- stencil
- two
Sided Lighting - unique
Id - use
Alpha From Diffuse Texture - use
Emissive As Illumination - use
Glossiness From Specular Map Alpha - use
Lightmap As Shadowmap - use
Object Space Normal Map - use
Parallax - use
Parallax Occlusion - use
Reflection Fresnel From Specular - use
Reflection Over Alpha - use
Specular Over Alpha - z
Offset - z
Offset Units - All
Dirty Flag - Attributes
Dirty Flag - Clock
Wise Side Orientation - Counter
Clock Wise Side Orientation - Fresnel
Dirty Flag - Light
Dirty Flag - Line
List Draw Mode - Line
Loop Draw Mode - Line
Strip Draw Mode - MATERIAL_
ALPHABLEND - MATERIAL_
ALPHATEST - MATERIAL_
ALPHATESTANDBLEND - MATERIAL_
NORMALBLENDMETHOD_ RNM - MATERIAL_
NORMALBLENDMETHOD_ WHITEOUT - MATERIAL_
OPAQUE - Misc
Dirty Flag - On
Event Observable - Point
Fill Mode - Point
List Draw Mode - Pre
Pass Dirty Flag - Shader
Indexer - Texture
Dirty Flag - Triangle
Fan Draw Mode - Triangle
Fill Mode - Triangle
Strip Draw Mode - Wire
Frame Fill Mode
Accessors
- alpha
- alpha
Mode - back
Face Culling - block
Dirty Mechanism - camera
Color Curves - camera
Color Curves Enabled - camera
Color Grading Enabled - camera
Color Grading Texture - camera
Contrast - camera
Exposure - camera
Tone Mapping Enabled - can
Render ToMRT - cull
Back Faces - fill
Mode - fog
Enabled - has
Render Target Textures - image
Processing Configuration - is
Frozen - is
Pre Pass Capable - need
Depth Pre Pass - on
Bind - on
Bind Observable - on
Dispose - on
Effect Created Observable - on
Un Bind Observable - points
Cloud - transparency
Mode - use
Logarithmic Depth - wireframe
- Ambient
Texture Enabled - Bump
Texture Enabled - Color
Grading Texture Enabled - Detail
Texture Enabled - Diffuse
Texture Enabled - Emissive
Texture Enabled - Fresnel
Enabled - Lightmap
Texture Enabled - Opacity
Texture Enabled - Reflection
Texture Enabled - Refraction
Texture Enabled - Specular
Texture Enabled
Methods
- Add
Attribute - Add
Uniform - Attach
After Bind - Builder
- Fragment_
Before_ Fog - Fragment_
Before_ Frag Color - Fragment_
Before_ Lights - Fragment_
Begin - Fragment_
Custom_ Alpha - Fragment_
Custom_ Diffuse - Fragment_
Definitions - Fragment_
Main Begin - Fragment_
Main End - Review
Uniform - Vertex_
After_ World Pos Computed - Vertex_
Before_ Normal Updated - Vertex_
Before_ Position Updated - Vertex_
Begin - Vertex_
Definitions - Vertex_
Main Begin - Vertex_
Main End - atomic
Materials Update - bind
- bind
Eye Position - bind
For Sub Mesh - bind
Only Normal Matrix - bind
Only World Matrix - bind
View - bind
View Projection - build
Uniform Layout - clone
- dispose
- force
Compilation - force
Compilation Async - freeze
- get
Active Textures - get
Alpha Test Texture - get
Animatables - get
Binded Meshes - get
Class Name - get
Effect - get
Scene - has
Texture - is
Ready - is
Ready For Sub Mesh - mark
As Dirty - mark
Dirty - need
Alpha Blending - need
Alpha Blending For Mesh - need
Alpha Testing - reset
Draw Cache - serialize
- set
Pre Pass Renderer - to
String - unbind
- unfreeze
- Parse
Constructors
constructor
Parameters
name: string
Optional scene: Scene
Returns CustomMaterial
Properties
Custom PartsSearch playground for CustomParts
Fragment ShaderSearch playground for FragmentShader
Vertex ShaderSearch playground for VertexShader
_created Shader NameSearch playground for _createdShaderName
_custom AttributesSearch playground for _customAttributes
_custom UniformSearch playground for _customUniform
_is Created ShaderSearch playground for _isCreatedShader
_new Sampler InstancesSearch playground for _newSamplerInstances
Type declaration
[name: string]: Texture
_new Uniform InstancesSearch playground for _newUniformInstances
Type declaration
[name: string]: any
_new UniformsSearch playground for _newUniforms
allow Shader Hot SwappingSearch playground for allowShaderHotSwapping
Gets or sets a boolean indicating that the material is allowed (if supported) to do shader hot swapping. This means that the material can keep using a previous shader while a new one is being compiled. This is mostly used when shader parallel compilation is supported (true by default)
alpha Cut OffSearch playground for alphaCutOff
Defines the alpha limits in alpha test mode.
ambient ColorSearch playground for ambientColor
The color of the material lit by the environmental background lighting.
ambient TextureSearch playground for ambientTexture
AKA Occlusion Texture in other nomenclature, it helps adding baked shadows into your material.
animationsSearch playground for animations
Stores the animations for the material
bump TextureSearch playground for bumpTexture
Bump mapping is a technique to simulate bump and dents on a rendered surface. These are made by creating a normal map from an image. The means to do this can be found on the web, a search for 'normal map generator' will bring up free and paid for methods of doing this.
check Ready On Every CallSearch playground for checkReadyOnEveryCall
Specifies if the ready state should be checked on each call
check Ready Only OnceSearch playground for checkReadyOnlyOnce
Specifies if the ready state should be checked once
clip PlaneSearch playground for clipPlane
Gets or sets the active clipplane 1
clip Plane2Search playground for clipPlane2
Gets or sets the active clipplane 2
clip Plane3Search playground for clipPlane3
Gets or sets the active clipplane 3
clip Plane4Search playground for clipPlane4
Gets or sets the active clipplane 4
clip Plane5Search playground for clipPlane5
Gets or sets the active clipplane 5
clip Plane6Search playground for clipPlane6
Gets or sets the active clipplane 6
custom Shader Name ResolveSearch playground for customShaderNameResolve
Type declaration
Custom callback helping to override the default shader used in the material.
Parameters
shaderName: string
uniforms: string[]
uniformBuffers: string[]
samplers: string[]
defines: string[] | MaterialDefines
Optional attributes: string[]
Optional options: ICustomShaderNameResolveOptions
Returns string
decal MapSearch playground for decalMap
Defines the decal map parameters for the material.
depth FunctionSearch playground for depthFunction
Specifies the depth function that should be used. 0 means the default engine function
Readonly detail MapSearch playground for detailMap
Defines the detail map parameters for the material.
diffuse ColorSearch playground for diffuseColor
The basic color of the material as viewed under a light.
diffuse Fresnel ParametersSearch playground for diffuseFresnelParameters
Define the diffuse fresnel parameters of the material.
diffuse TextureSearch playground for diffuseTexture
The basic texture of the material as viewed under a light.
disable Color WriteSearch playground for disableColorWrite
Specifies if color writing should be disabled
disable Depth WriteSearch playground for disableDepthWrite
Specifies if depth writing should be disabled
disable LightingSearch playground for disableLighting
Does lights from the scene impacts this material. It can be a nice trick for performance to disable lighting on a fully emissive material.
do Not SerializeSearch playground for doNotSerialize
Specifies if the material should be serialized
emissive ColorSearch playground for emissiveColor
Define the color of the material as if self lit. This will be mixed in the final result even in the absence of light.
emissive Fresnel ParametersSearch playground for emissiveFresnelParameters
Define the emissive fresnel parameters of the material.
emissive TextureSearch playground for emissiveTexture
Define texture of the material as if self lit. This will be mixed in the final result even in the absence of light.
force Depth WriteSearch playground for forceDepthWrite
Specifies if depth writing should be forced
get Render Target TexturesSearch playground for getRenderTargetTextures
Callback triggered to get the render target textures
idSearch playground for id
The ID of the material
index Of RefractionSearch playground for indexOfRefraction
In case of refraction, define the value of the index of refraction.
inspectable Custom PropertiesSearch playground for inspectableCustomProperties
List of inspectable custom properties (used by the Inspector)
invert Normal MapXSearch playground for invertNormalMapX
If sets to true, x component of normal map value will invert (x = 1.0 - x).
invert Normal MapYSearch playground for invertNormalMapY
If sets to true, y component of normal map value will invert (y = 1.0 - y).
invert RefractionYSearch playground for invertRefractionY
Invert the refraction texture alongside the y axis. It can be useful with procedural textures or probe for instance.
lightmap TextureSearch playground for lightmapTexture
Complex lighting can be computationally expensive to compute at runtime. To save on computation, lightmaps may be used to store calculated lighting in a texture which will be applied to a given mesh.
link Emissive With DiffuseSearch playground for linkEmissiveWithDiffuse
If true, some kind of energy conservation will prevent the end result to be more than 1 by reducing the emissive level when the final color is close to one.
max Simultaneous LightsSearch playground for maxSimultaneousLights
Defines the maximum number of lights that can be used in the material
metadataSearch playground for metadata
Gets or sets user defined metadata
nameSearch playground for name
The name of the material
on CompiledSearch playground for onCompiled
Callback triggered when the material is compiled
on Dispose ObservableSearch playground for onDisposeObservable
An event triggered when the material is disposed
on ErrorSearch playground for onError
Callback triggered when an error occurs
opacity Fresnel ParametersSearch playground for opacityFresnelParameters
Define the opacity fresnel parameters of the material.
opacity TextureSearch playground for opacityTexture
Define the transparency of the material from a texture. The final alpha value can be read either from the red channel (if texture.getAlphaFromRGB is false) or from the luminance or the current texel (if texture.getAlphaFromRGB is true)
parallax Scale BiasSearch playground for parallaxScaleBias
Apply a scaling factor that determine which "depth" the height map should reprensent. A value between 0.05 and 0.1 is reasonnable in Parallax, you can reach 0.2 using Parallax Occlusion.
Optional plugin ManagerSearch playground for pluginManager
Plugin manager for this material
point SizeSearch playground for pointSize
Stores the size of points
Readonly pre Pass ConfigurationSearch playground for prePassConfiguration
Defines additional PrePass parameters for the material.
reflection Fresnel ParametersSearch playground for reflectionFresnelParameters
Define the reflection fresnel parameters of the material.
reflection TextureSearch playground for reflectionTexture
Define the texture used to display the reflection.
refraction Fresnel ParametersSearch playground for refractionFresnelParameters
Define the refraction fresnel parameters of the material.
refraction TextureSearch playground for refractionTexture
Define the texture used to display the refraction.
reserved Data StoreSearch playground for reservedDataStore
For internal use only. Please do not use.
roughnessSearch playground for roughness
Helps to define how blurry the reflections should appears in the material.
separate Culling PassSearch playground for separateCullingPass
Specifies if there should be a separate pass for culling
shadow Depth WrapperSearch playground for shadowDepthWrapper
Custom shadow depth material to use for shadow rendering instead of the in-built one
side OrientationSearch playground for sideOrientation
Stores the value for side orientation
specular ColorSearch playground for specularColor
Define how the color and intensity of the highlight given by the light in the material.
specular PowerSearch playground for specularPower
Defines how sharp are the highlights in the material. The bigger the value the sharper giving a more glossy feeling to the result. Reversely, the smaller the value the blurrier giving a more rough feeling to the result.
specular TextureSearch playground for specularTexture
Define how the color and intensity of the highlight given by the light in the material.
stateSearch playground for state
The state of the material
Readonly stencilSearch playground for stencil
Gives access to the stencil properties of the material
two Sided LightingSearch playground for twoSidedLighting
If sets to true and backfaceCulling is false, normals will be flipped on the backside.
unique IdSearch playground for uniqueId
Gets or sets the unique id of the material
use Alpha From Diffuse TextureSearch playground for useAlphaFromDiffuseTexture
Does the transparency come from the diffuse texture alpha channel.
use Emissive As IlluminationSearch playground for useEmissiveAsIllumination
If true, the emissive value is added into the end result, otherwise it is multiplied in.
use Glossiness From Specular Map AlphaSearch playground for useGlossinessFromSpecularMapAlpha
Defines if the glossiness/roughness of the material should be read from the specular map alpha channel
use Lightmap As ShadowmapSearch playground for useLightmapAsShadowmap
In case of light mapping, define whether the map contains light or shadow informations.
use Object Space Normal MapSearch playground for useObjectSpaceNormalMap
Allows using an object space normal map (instead of tangent space).
use ParallaxSearch playground for useParallax
Is parallax enabled or not.
use Parallax OcclusionSearch playground for useParallaxOcclusion
Is parallax occlusion enabled or not. If true, the outcome is way more realistic than traditional Parallax but you can expect a performance hit that worthes consideration.
use Reflection Fresnel From SpecularSearch playground for useReflectionFresnelFromSpecular
If true automatically deducts the fresnels values from the material specularity.
use Reflection Over AlphaSearch playground for useReflectionOverAlpha
Specifies that the material will keeps the reflection highlights over a transparent surface (only the most luminous ones). A car glass is a good exemple of that. When the street lights reflects on it you can not see what is behind.
use Specular Over AlphaSearch playground for useSpecularOverAlpha
Specifies that the material will keep the specular highlights over a transparent surface (only the most luminous ones). A car glass is a good exemple of that. When sun reflects on it you can not see what is behind.
z OffsetSearch playground for zOffset
Stores the z offset Factor value
z Offset UnitsSearch playground for zOffsetUnits
Stores the z offset Units value
Static Readonly All Dirty FlagSearch playground for AllDirtyFlag
The all dirty flag value
Static Readonly Attributes Dirty FlagSearch playground for AttributesDirtyFlag
The dirty attribute flag value
Static Readonly Clock Wise Side OrientationSearch playground for ClockWiseSideOrientation
Stores the clock-wise side orientation
Static Readonly Counter Clock Wise Side OrientationSearch playground for CounterClockWiseSideOrientation
Stores the counter clock-wise side orientation
Static Readonly Fresnel Dirty FlagSearch playground for FresnelDirtyFlag
The dirty fresnel flag value
Static Readonly Light Dirty FlagSearch playground for LightDirtyFlag
The dirty light flag value
Static Readonly Line List Draw ModeSearch playground for LineListDrawMode
Returns the line list draw mode
Static Readonly Line Loop Draw ModeSearch playground for LineLoopDrawMode
Returns the line loop draw mode
Static Readonly Line Strip Draw ModeSearch playground for LineStripDrawMode
Returns the line strip draw mode
Static Readonly MATERIAL_ ALPHABLENDSearch playground for MATERIAL_ALPHABLEND
MaterialTransparencyMode: Pixels are blended (according to the alpha mode) with the already drawn pixels in the current frame buffer.
Static Readonly MATERIAL_ ALPHATESTSearch playground for MATERIAL_ALPHATEST
MaterialTransparencyMode: Alpha Test mode, pixel are discarded below a certain threshold defined by the alpha cutoff value.
Static Readonly MATERIAL_ ALPHATESTANDBLENDSearch playground for MATERIAL_ALPHATESTANDBLEND
MaterialTransparencyMode: Pixels are blended (according to the alpha mode) with the already drawn pixels in the current frame buffer. They are also discarded below the alpha cutoff threshold to improve performances.
Static Readonly MATERIAL_ NORMALBLENDMETHOD_ RNMSearch playground for MATERIAL_NORMALBLENDMETHOD_RNM
The Reoriented Normal Mapping method is used to blend normals. Details of the algorithm can be found here: https://blog.selfshadow.com/publications/blending-in-detail/
Static Readonly MATERIAL_ NORMALBLENDMETHOD_ WHITEOUTSearch playground for MATERIAL_NORMALBLENDMETHOD_WHITEOUT
The Whiteout method is used to blend normals. Details of the algorithm can be found here: https://blog.selfshadow.com/publications/blending-in-detail/
Static Readonly MATERIAL_ OPAQUESearch playground for MATERIAL_OPAQUE
MaterialTransparencyMode: No transparency mode, Alpha channel is not use.
Static Readonly Misc Dirty FlagSearch playground for MiscDirtyFlag
The dirty misc flag value
Static On Event ObservableSearch playground for OnEventObservable
Event observable which raises global events common to all materials (like MaterialPluginEvent.Created)
Static Readonly Point Fill ModeSearch playground for PointFillMode
Returns the point fill mode
Static Readonly Point List Draw ModeSearch playground for PointListDrawMode
Returns the point list draw mode
Static Readonly Pre Pass Dirty FlagSearch playground for PrePassDirtyFlag
The dirty prepass flag value
Static Shader IndexerSearch playground for ShaderIndexer
Static Readonly Texture Dirty FlagSearch playground for TextureDirtyFlag
The dirty texture flag value
Static Readonly Triangle Fan Draw ModeSearch playground for TriangleFanDrawMode
Returns the triangle fan draw mode
Static Readonly Triangle Fill ModeSearch playground for TriangleFillMode
Returns the triangle fill mode
Static Readonly Triangle Strip Draw ModeSearch playground for TriangleStripDrawMode
Returns the triangle strip draw mode
Static Readonly Wire Frame Fill ModeSearch playground for WireFrameFillMode
Returns the wireframe mode
Accessors
alpha
Gets the alpha value of the material
Returns number
Sets the alpha value of the material
Parameters
value: number
Returns void
alpha Mode
Gets the value of the alpha mode
Value Type Description 0 ALPHA_DISABLE 1 ALPHA_ADD 2 ALPHA_COMBINE 3 ALPHA_SUBTRACT 4 ALPHA_MULTIPLY 5 ALPHA_MAXIMIZED 6 ALPHA_ONEONE 7 ALPHA_PREMULTIPLIED 8 ALPHA_PREMULTIPLIED_PORTERDUFF 9 ALPHA_INTERPOLATE 10 ALPHA_SCREENMODE Returns number
Sets the value of the alpha mode.
Value Type Description 0 ALPHA_DISABLE 1 ALPHA_ADD 2 ALPHA_COMBINE 3 ALPHA_SUBTRACT 4 ALPHA_MULTIPLY 5 ALPHA_MAXIMIZED 6 ALPHA_ONEONE 7 ALPHA_PREMULTIPLIED 8 ALPHA_PREMULTIPLIED_PORTERDUFF 9 ALPHA_INTERPOLATE 10 ALPHA_SCREENMODE Parameters
value: number
Returns void
back Face Culling
Gets the culling state
Returns boolean
Sets the culling state (true to enable culling, false to disable)
Parameters
value: boolean
Returns void
block Dirty Mechanism
Block the dirty-mechanism for this specific material When set to false after being true the material will be marked as dirty.
Returns boolean
Block the dirty-mechanism for this specific material When set to false after being true the material will be marked as dirty.
Parameters
value: boolean
Returns void
camera Color Curves
The color grading curves provide additional color adjustmnent that is applied after any color grading transform (3D LUT). They allow basic adjustment of saturation and small exposure adjustments, along with color filter tinting to provide white balance adjustment or more stylistic effects. These are similar to controls found in many professional imaging or colorist software. The global controls are applied to the entire image. For advanced tuning, extra controls are provided to adjust the shadow, midtone and highlight areas of the image; corresponding to low luminance, medium luminance, and high luminance areas respectively.
Returns Nullable<ColorCurves>
The color grading curves provide additional color adjustment that is applied after any color grading transform (3D LUT). They allow basic adjustment of saturation and small exposure adjustments, along with color filter tinting to provide white balance adjustment or more stylistic effects. These are similar to controls found in many professional imaging or colorist software. The global controls are applied to the entire image. For advanced tuning, extra controls are provided to adjust the shadow, midtone and highlight areas of the image; corresponding to low luminance, medium luminance, and high luminance areas respectively.
Parameters
value: Nullable<ColorCurves>
Returns void
camera Color Curves Enabled
Gets whether the color curves effect is enabled.
Returns boolean
Sets whether the color curves effect is enabled.
Parameters
value: boolean
Returns void
camera Color Grading Enabled
Gets whether the color grading effect is enabled.
Returns boolean
Gets whether the color grading effect is enabled.
Parameters
value: boolean
Returns void
camera Color Grading Texture
Gets the Color Grading 2D Lookup Texture.
Returns Nullable<BaseTexture>
Sets the Color Grading 2D Lookup Texture.
Parameters
value: Nullable<BaseTexture>
Returns void
camera Contrast
Gets The camera contrast used on this material.
Returns number
Sets The camera contrast used on this material.
Parameters
value: number
Returns void
camera Exposure
The camera exposure used on this material. This property is here and not in the camera to allow controlling exposure without full screen post process. This corresponds to a photographic exposure.
Returns number
The camera exposure used on this material. This property is here and not in the camera to allow controlling exposure without full screen post process. This corresponds to a photographic exposure.
Parameters
value: number
Returns void
camera Tone Mapping Enabled
Gets whether tonemapping is enabled or not.
Returns boolean
Sets whether tonemapping is enabled or not
Parameters
value: boolean
Returns void
can Render ToMRT
Can this material render to several textures at once
Returns boolean
cull Back Faces
Gets the type of faces that should be culled
Returns boolean
Sets the type of faces that should be culled (true for back faces, false for front faces)
Parameters
value: boolean
Returns void
fill Mode
Gets the material fill mode
Returns number
Sets the material fill mode
Parameters
value: number
Returns void
fog Enabled
Gets the value of the fog enabled state
Returns boolean
Sets the state for enabling fog
Parameters
value: boolean
Returns void
has Render Target Textures
Gets a boolean indicating that current material needs to register RTT
Returns boolean
image Processing Configuration
Gets the image processing configuration used either in this material.
Returns ImageProcessingConfiguration
Sets the Default image processing configuration used either in the this material.
If sets to null, the scene one is in use.
Parameters
value: ImageProcessingConfiguration
Returns void
is Frozen
Specifies if updates for the material been locked
Returns boolean
is Pre Pass Capable
Can this material render to prepass
Returns boolean
need Depth Pre Pass
Gets the depth pre-pass value
Returns boolean
Sets the need depth pre-pass value
Parameters
value: boolean
Returns void
on Bind
Called during a bind event
Parameters
callback: ((Mesh: AbstractMesh) => void)
Parameters
Mesh: AbstractMesh
Returns void
Returns void
on Bind Observable
An event triggered when the material is bound
Returns Observable<AbstractMesh>
on Dispose
Called during a dispose event
Parameters
callback: (() => void)
Returns void
Returns void
on Effect Created Observable
An event triggered when the effect is (re)created
Returns Observable<{ effect: Effect; subMesh: Nullable<SubMesh> }>
on Un Bind Observable
An event triggered when the material is unbound
Returns Observable<Material>
points Cloud
Gets the value specifying if point clouds are enabled
Returns boolean
Sets the state of point cloud mode
Parameters
value: boolean
Returns void
transparency Mode
use Logarithmic Depth
In case the depth buffer does not allow enough depth precision for your scene (might be the case in large scenes) You can try switching to logarithmic depth.
Returns boolean
In case the depth buffer does not allow enough depth precision for your scene (might be the case in large scenes) You can try switching to logarithmic depth.
Parameters
value: boolean
Returns void
wireframe
Returns boolean
Sets the state of wireframe mode
Parameters
value: boolean
Returns void
Static Ambient Texture Enabled
Are ambient textures enabled in the application.
Returns boolean
Are ambient textures enabled in the application.
Parameters
value: boolean
Returns void
Static Bump Texture Enabled
Are bump textures enabled in the application.
Returns boolean
Are bump textures enabled in the application.
Parameters
value: boolean
Returns void
Static Color Grading Texture Enabled
Are color grading textures enabled in the application.
Returns boolean
Are color grading textures enabled in the application.
Parameters
value: boolean
Returns void
Static Detail Texture Enabled
Are detail textures enabled in the application.
Returns boolean
Are detail textures enabled in the application.
Parameters
value: boolean
Returns void
Static Diffuse Texture Enabled
Are diffuse textures enabled in the application.
Returns boolean
Are diffuse textures enabled in the application.
Parameters
value: boolean
Returns void
Static Emissive Texture Enabled
Are emissive textures enabled in the application.
Returns boolean
Are emissive textures enabled in the application.
Parameters
value: boolean
Returns void
Static Fresnel Enabled
Are fresnels enabled in the application.
Returns boolean
Are fresnels enabled in the application.
Parameters
value: boolean
Returns void
Static Lightmap Texture Enabled
Are lightmap textures enabled in the application.
Returns boolean
Are lightmap textures enabled in the application.
Parameters
value: boolean
Returns void
Static Opacity Texture Enabled
Are opacity textures enabled in the application.
Returns boolean
Are opacity textures enabled in the application.
Parameters
value: boolean
Returns void
Static Reflection Texture Enabled
Are reflection textures enabled in the application.
Returns boolean
Are reflection textures enabled in the application.
Parameters
value: boolean
Returns void
Static Refraction Texture Enabled
Are refraction textures enabled in the application.
Returns boolean
Are refraction textures enabled in the application.
Parameters
value: boolean
Returns void
Static Specular Texture Enabled
Are specular textures enabled in the application.
Returns boolean
Are specular textures enabled in the application.
Parameters
value: boolean
Returns void
Methods
Add AttributeSearch playground for AddAttribute
Parameters
name: string
Returns CustomMaterial
Add UniformSearch playground for AddUniform
Parameters
name: string
kind: string
param: any
Returns CustomMaterial
Attach After BindSearch playground for AttachAfterBind
BuilderSearch playground for Builder
Parameters
shaderName: string
uniforms: string[]
uniformBuffers: string[]
samplers: string[]
defines: string[] | MaterialDefines
Optional attributes: string[]
Returns string
Fragment_ Before_ FogSearch playground for Fragment_Before_Fog
Parameters
shaderPart: string
Returns CustomMaterial
Fragment_ Before_ Frag ColorSearch playground for Fragment_Before_FragColor
Parameters
shaderPart: string
Returns CustomMaterial
Fragment_ Before_ LightsSearch playground for Fragment_Before_Lights
Parameters
shaderPart: string
Returns CustomMaterial
Fragment_ BeginSearch playground for Fragment_Begin
Parameters
shaderPart: string
Returns CustomMaterial
Fragment_ Custom_ AlphaSearch playground for Fragment_Custom_Alpha
Parameters
shaderPart: string
Returns CustomMaterial
Fragment_ Custom_ DiffuseSearch playground for Fragment_Custom_Diffuse
Parameters
shaderPart: string
Returns CustomMaterial
Fragment_ DefinitionsSearch playground for Fragment_Definitions
Parameters
shaderPart: string
Returns CustomMaterial
Fragment_ Main BeginSearch playground for Fragment_MainBegin
Parameters
shaderPart: string
Returns CustomMaterial
Fragment_ Main EndSearch playground for Fragment_MainEnd
Parameters
shaderPart: string
Returns CustomMaterial
Review UniformSearch playground for ReviewUniform
Parameters
name: string
arr: string[]
Returns string[]
Vertex_ After_ World Pos ComputedSearch playground for Vertex_After_WorldPosComputed
Parameters
shaderPart: string
Returns CustomMaterial
Vertex_ Before_ Normal UpdatedSearch playground for Vertex_Before_NormalUpdated
Parameters
shaderPart: string
Returns CustomMaterial
Vertex_ Before_ Position UpdatedSearch playground for Vertex_Before_PositionUpdated
Parameters
shaderPart: string
Returns CustomMaterial
Vertex_ BeginSearch playground for Vertex_Begin
Parameters
shaderPart: string
Returns CustomMaterial
Vertex_ DefinitionsSearch playground for Vertex_Definitions
Parameters
shaderPart: string
Returns CustomMaterial
Vertex_ Main BeginSearch playground for Vertex_MainBegin
Parameters
shaderPart: string
Returns CustomMaterial
Vertex_ Main EndSearch playground for Vertex_MainEnd
Parameters
shaderPart: string
Returns CustomMaterial
atomic Materials UpdateSearch playground for atomicMaterialsUpdate
This allows you to modify the material without marking it as dirty after every change. This function should be used if you need to make more than one dirty-enabling change to the material - adding a texture, setting a new fill mode and so on. The callback will pass the material as an argument, so you can make your changes to it.
Parameters
callback: ((material: CustomMaterial) => void)
the callback to be executed that will update the material
Parameters
material: CustomMaterial
Returns void
Returns void
bindSearch playground for bind
bind Eye PositionSearch playground for bindEyePosition
Binds the view matrix to the effect
Parameters
effect: Effect
defines the effect to bind the view matrix to
Optional variableName: string
name of the shader variable that will hold the eye position
Returns void
bind For Sub MeshSearch playground for bindForSubMesh
bind Only Normal MatrixSearch playground for bindOnlyNormalMatrix
Binds the given normal matrix to the active effect
Parameters
normalMatrix: Matrix
the matrix to bind
Returns void
bind Only World MatrixSearch playground for bindOnlyWorldMatrix
Binds the given world matrix to the active effect
Parameters
world: Matrix
the matrix to bind
Returns void
bind ViewSearch playground for bindView
Binds the view matrix to the effect
Parameters
effect: Effect
defines the effect to bind the view matrix to
Returns void
bind View ProjectionSearch playground for bindViewProjection
Binds the view projection and projection matrices to the effect
Parameters
effect: Effect
defines the effect to bind the view projection and projection matrices to
Returns void
build Uniform LayoutSearch playground for buildUniformLayout
Builds the material UBO layouts. Used internally during the effect preparation.
Returns void
cloneSearch playground for clone
Makes a duplicate of the material, and gives it a new name
Parameters
name: string
defines the new name for the duplicated material
Optional cloneTexturesOnlyOnce: boolean
if a texture is used in more than one channel (e.g diffuse and opacity), only clone it once and reuse it on the other channels. Default false.
Returns StandardMaterial
the cloned material
disposeSearch playground for dispose
Disposes the material
Parameters
Optional forceDisposeEffect: boolean
specifies if effects should be forcefully disposed
Optional forceDisposeTextures: boolean
specifies if textures should be forcefully disposed
Returns void
force CompilationSearch playground for forceCompilation
Force shader compilation
Parameters
mesh: AbstractMesh
defines the mesh associated with this material
Optional onCompiled: ((material: Material) => void)
defines a function to execute once the material is compiled
Parameters
material: Material
Returns void
Optional options: Partial<IMaterialCompilationOptions>
defines the options to configure the compilation
Optional onError: ((reason: string) => void)
defines a function to execute if the material fails compiling
Parameters
reason: string
Returns void
Returns void
force Compilation AsyncSearch playground for forceCompilationAsync
Force shader compilation
Parameters
mesh: AbstractMesh
defines the mesh that will use this material
Optional options: Partial<IMaterialCompilationOptions>
defines additional options for compiling the shaders
Returns Promise<void>
a promise that resolves when the compilation completes
freezeSearch playground for freeze
Locks updates for the material
Returns void
get Active TexturesSearch playground for getActiveTextures
Gets the active textures from the material
Returns BaseTexture[]
an array of textures
get Alpha Test TextureSearch playground for getAlphaTestTexture
Get the texture used for alpha test purpose.
Returns Nullable<BaseTexture>
the diffuse texture in case of the standard material.
get AnimatablesSearch playground for getAnimatables
Get the list of animatables in the material.
Returns IAnimatable[]
the list of animatables object used in the material
get Binded MeshesSearch playground for getBindedMeshes
Gets the meshes bound to the material
Returns AbstractMesh[]
an array of meshes bound to the material
get Class NameSearch playground for getClassName
Gets the current class name of the material e.g. "StandardMaterial" Mainly use in serialization.
Returns string
the class name
get EffectSearch playground for getEffect
Returns Effect
get SceneSearch playground for getScene
Returns the current scene
Returns Scene
a Scene
has TextureSearch playground for hasTexture
Specifies if the material uses a texture
Parameters
texture: BaseTexture
defines the texture to check against the material
Returns boolean
a boolean specifying if the material uses the texture
is ReadySearch playground for isReady
Parameters
Optional mesh: AbstractMesh
Optional useInstances: boolean
Returns boolean
is Ready For Sub MeshSearch playground for isReadyForSubMesh
Get if the submesh is ready to be used and all its information available. Child classes can use it to update shaders
Parameters
mesh: AbstractMesh
defines the mesh to check
subMesh: SubMesh
defines which submesh to check
Optional useInstances: boolean
specifies that instances should be used
Returns boolean
a boolean indicating that the submesh is ready or not
mark As DirtySearch playground for markAsDirty
Marks a define in the material to indicate that it needs to be re-computed
Parameters
flag: number
defines a flag used to determine which parts of the material have to be marked as dirty
Returns void
mark DirtySearch playground for markDirty
Marks the material to indicate that it needs to be re-calculated
Parameters
Optional forceMaterialDirty: boolean
Forces the material to be marked as dirty for all components (same as this.markAsDirty(Material.AllDirtyFlag)). You should use this flag if the material is frozen and you want to force a recompilation.
Returns void
need Alpha BlendingSearch playground for needAlphaBlending
Specifies if the material will require alpha blending
Returns boolean
a boolean specifying if alpha blending is needed
need Alpha Blending For MeshSearch playground for needAlphaBlendingForMesh
Specifies if the mesh will require alpha blending
Parameters
mesh: AbstractMesh
defines the mesh to check
Returns boolean
a boolean specifying if alpha blending is needed for the mesh
need Alpha TestingSearch playground for needAlphaTesting
Specifies if this material should be rendered in alpha test mode
Returns boolean
a boolean specifying if an alpha test is needed.
reset Draw CacheSearch playground for resetDrawCache
Resets the draw wrappers cache for all submeshes that are using this material
Returns void
serializeSearch playground for serialize
Serializes this material
Returns any
the serialized material object
set Pre Pass RendererSearch playground for setPrePassRenderer
Sets the required values to the prepass renderer.
Parameters
prePassRenderer: PrePassRenderer
defines the prepass renderer to setup.
Returns boolean
true if the pre pass is needed.
to StringSearch playground for toString
Returns a string representation of the current material
Parameters
Optional fullDetails: boolean
defines a boolean indicating which levels of logging is desired
Returns string
a string with material information
unbindSearch playground for unbind
Unbinds the material from the mesh
Returns void
unfreezeSearch playground for unfreeze
Unlocks updates for the material
Returns void
Static ParseSearch playground for Parse
Creates a standard material from parsed material data
Parameters
source: any
defines the JSON representation of the material
scene: Scene
defines the hosting scene
rootUrl: string
defines the root URL to use to load textures and relative dependencies
Returns StandardMaterial
a new standard material
Instantiates a new standard material. This is the default material used in Babylon. It is the best trade off between quality and performances.