Class ThinEngine
Hierarchy
- ThinEngine
Index
Constructors
Properties
- cull
Back Faces - disable
Uniform Buffers - disable
Vertex Array Objects - enable
Unpack FlipYCached - forcePOTTextures
- host
Information - is
Fullscreen - on
Before Texture Init Observable - on
Context Lost Observable - on
Context Restored Observable - premultiplied
Alpha - prevent
Cache Wipe Between Frames - render
Even InBackground - use
Reverse Depth Buffer - validate
Shader Programs - Collisions
Epsilon - Exception
List
Accessors
- alpha
State - current
Viewport - depth
Culling State - description
- do
Not Handle Context Lost - empty
Cube Texture - empty
Texture - empty
Texture2DArray - empty
Texture3D - frame
Id - framebuffer
Dimensions Object - is
Stencil Enable - is
WebGPU - name
- needPOTTextures
- shader
Platform Name - stencil
State - supports
Uniform Buffers - version
- webGLVersion
- Has
Major Performance Caveat - Is
Supported - Npm
Package - Shaders
Repository - Version
Methods
- _create
Depth Stencil Cube Texture - apply
States - are
All Effects Ready - attach
Context Lost Event - attach
Context Restored Event - begin
Frame - bind
Array Buffer - bind
Attachments - bind
Buffers - bind
Buffers Directly - bind
Framebuffer - bind
Instances Buffer - bind
Samplers - bind
Uniform Block - bind
Uniform Buffer - bind
Uniform Buffer Base - bind
Vertex Array Object - build
Texture Layout - clear
- clear
Attachments - clear
Internal Textures Cache - create
Cube Texture - create
Depth Stencil Texture - create
Dynamic Texture - create
Dynamic Uniform Buffer - create
Dynamic Vertex Buffer - create
Effect - create
Index Buffer - create
Multiple Render Target - create
Pipeline Context - create
Prefiltered Cube Texture - create
Raw Cube Texture - create
Raw Cube Texture From Url - create
Raw Shader Program - create
Raw Texture - create
Raw Texture2DArray - create
Raw Texture3D - create
Render Target Cube Texture - create
Render Target Texture - create
Shader Program - create
Texture - create
Uniform Buffer - create
Vertex Buffer - disable
Attribute ByIndex - disable
Instance Attribute - disable
Instance Attribute ByName - dispose
- draw
- draw
Arrays Type - draw
Elements Type - draw
Point Clouds - draw
UnIndexed - enable
Effect - end
Frame - flush
Framebuffer - get
Alpha Equation - get
Alpha Mode - get
Attributes - get
Caps - get
Class Name - get
Color Write - get
Error - get
GlInfo - get
Hardware Scaling Level - get
Host Document - get
Host Window - get
Loaded Textures Cache - get
Render Height - get
Render Width - get
Rendering Canvas - get
Uniforms - read
Pixels - record
Vertex Array Object - release
Effects - release
Vertex Array Object - reset
Texture Cache - resize
- restore
Default Framebuffer - restore
Single Attachment - run
Render Loop - set
Alpha Constants - set
Alpha Equation - set
Alpha Mode - set
Array - set
Array2 - set
Array3 - set
Array4 - set
Color Write - set
Float - set
Float2 - set
Float3 - set
Float4 - set
Hardware Scaling Level - set
Int - set
Int2 - set
Int3 - set
Int4 - set
Int Array - set
Int Array2 - set
Int Array3 - set
Int Array4 - set
Matrices - set
Matrix2x2 - set
Matrix3x3 - set
Size - set
Texture - set
Texture Array - set
Viewport - stop
Render Loop - un
Bind Framebuffer - un
Bind Multi Color Attachment Framebuffer - unbind
All Attributes - unbind
All Textures - unbind
Instance Attributes - update
And Bind Instances Buffer - update
Array Buffer - update
Dynamic Index Buffer - update
Dynamic Texture - update
Dynamic Vertex Buffer - update
Multiple Render Target Texture Sample Count - update
Raw Cube Texture - update
Raw Texture - update
Raw Texture2DArray - update
Raw Texture3D - update
Texture Data - update
Texture Dimensions - update
Texture Sampling Mode - update
Texture Wrapping Mode - update
Uniform Buffer - update
Video Texture - wipe
Caches - CeilingPOT
- FloorPOT
- Get
Exponent OfTwo - NearestPOT
- Queue
New Frame - is
Supported
Constructors
constructor
-
Creates a new engine
Parameters
-
canvasOrContext: Nullable<HTMLCanvasElement | OffscreenCanvas | WebGLRenderingContext | WebGL2RenderingContext>
defines the canvas or WebGL context to use for rendering. If you provide a WebGL context, Babylon.js will not hook events on the canvas (like pointers, keyboards, etc...) so no event observables will be available. This is mostly used when Babylon.js is used as a plugin on a system which alreay used the WebGL context
-
Optional antialias: boolean
defines enable antialiasing (default: false)
-
Optional options: EngineOptions
defines further options to be sent to the getContext() function
-
Optional adaptToDeviceRatio: boolean
defines whether to adapt to the device's viewport characteristics (default: false)
Returns ThinEngine
-
Properties
cull Back FacesSearch playground for cullBackFaces
Gets or sets a boolean indicating if back faces must be culled (true by default)
disable Uniform BuffersSearch playground for disableUniformBuffers
Gets or sets a boolean indicating that uniform buffers must be disabled even if they are supported
disable Vertex Array ObjectsSearch playground for disableVertexArrayObjects
Gets or sets a boolean indicating that vertex array object must be disabled even if they are supported
enable Unpack FlipYCachedSearch playground for enableUnpackFlipYCached
In case you are sharing the context with other applications, it might be interested to not cache the unpack flip y state to ensure a consistent value would be set.
forcePOTTexturesSearch playground for forcePOTTextures
Gets or sets a boolean that indicates if textures must be forced to power of 2 size even if not required
host InformationSearch playground for hostInformation
Gets information about the current host
is FullscreenSearch playground for isFullscreen
Gets a boolean indicating if the engine is currently rendering in fullscreen mode
on Before Texture Init ObservableSearch playground for onBeforeTextureInitObservable
Observable event triggered before each texture is initialized
on Context Lost ObservableSearch playground for onContextLostObservable
Observable signaled when a context lost event is raised
on Context Restored ObservableSearch playground for onContextRestoredObservable
Observable signaled when a context restored event is raised
premultiplied AlphaSearch playground for premultipliedAlpha
Defines whether the engine has been created with the premultipliedAlpha option on or not.
prevent Cache Wipe Between FramesSearch playground for preventCacheWipeBetweenFrames
Gets or sets a boolean indicating that cache can be kept between frames
render Even InBackgroundSearch playground for renderEvenInBackground
Gets or sets a boolean indicating if the engine must keep rendering even if the window is not in foregroun
use Reverse Depth BufferSearch playground for useReverseDepthBuffer
Gets or sets a boolean indicating if depth buffer should be reverse, going from far to near. This can provide greater z depth for distant objects.
validate Shader ProgramsSearch playground for validateShaderPrograms
Gets or sets a boolean indicating if the engine should validate programs after compilation
Static Collisions EpsilonSearch playground for CollisionsEpsilon
Gets or sets the epsilon value used by collision engine
Static Exception ListSearch playground for ExceptionList
Use this array to turn off some WebGL2 features on known buggy browsers version
Accessors
alpha State
-
Gets the alpha state manager
Returns AlphaState
current Viewport
-
Gets the current viewport
Returns Nullable<IViewportLike>
depth Culling State
-
Gets the depth culling state manager
Returns DepthCullingState
description
-
Returns a string describing the current engine
Returns string
do Not Handle Context Lost
-
Gets or sets a boolean indicating if resources should be retained to be able to handle context lost events
Returns boolean
-
Gets or sets a boolean indicating if resources should be retained to be able to handle context lost events
Parameters
-
value: boolean
Returns any
-
empty Cube Texture
-
Gets the default empty cube texture
Returns InternalTexture
empty Texture
-
Gets the default empty texture
Returns InternalTexture
empty Texture2DArray
-
Gets the default empty 2D array texture
Returns InternalTexture
empty Texture3D
-
Gets the default empty 3D texture
Returns InternalTexture
frame Id
-
Gets the current frame id
Returns number
framebuffer Dimensions Object
-
sets the object from which width and height will be taken from when getting render width and height Will fallback to the gl object
Parameters
-
dimensions: Nullable<{ framebufferHeight: number; framebufferWidth: number }>
the framebuffer width and height that will be used.
Returns any
-
is Stencil Enable
-
Returns true if the stencil buffer has been enabled through the creation option of the context.
Returns boolean
is WebGPU
-
Gets a boolean indicating if the engine runs in WebGPU or not.
Returns boolean
name
-
Returns the name of the engine
Returns string
needPOTTextures
-
Gets a boolean indicating that only power of 2 textures are supported Please note that you can still use non power of 2 textures but in this case the engine will forcefully convert them
Returns boolean
shader Platform Name
-
Gets the shader platfrom name used by the effects.
Returns string
stencil State
-
Gets the stencil state manager
Returns StencilState
supports Uniform Buffers
-
Gets a boolean indicating that the engine supports uniform buffers
Returns boolean
version
-
Returns the version of the engine
Returns number
webGLVersion
-
Gets version of the current webGL context Keep it for back compat - use version instead
Returns number
Static Has Major Performance Caveat
-
Gets a boolean indicating if the engine can be instanciated on a performant device (ie. if a webGL context can be found and it does not use a slow implementation)
Returns boolean
Static Is Supported
-
Gets a boolean indicating if the engine can be instanciated (ie. if a webGL context can be found)
Returns boolean
Static Npm Package
-
Returns the current npm package of the sdk
Returns string
Static Shaders Repository
-
Gets or sets the relative url used to load shaders if using the engine in non-minified mode
Returns string
-
Gets or sets the relative url used to load shaders if using the engine in non-minified mode
Parameters
-
value: string
Returns any
-
Static Version
-
Returns the current version of the framework
Returns string
Methods
_create Depth Stencil Cube TextureSearch playground for _createDepthStencilCubeTexture
-
Creates a depth stencil cube texture. This is only available in WebGL 2.
Parameters
-
size: number
The size of face edge in the cube texture.
-
options: DepthTextureCreationOptions
The options defining the cube texture.
Returns InternalTexture
The cube texture
-
apply StatesSearch playground for applyStates
-
Apply all cached states (depth, culling, stencil and alpha)
Returns void
are All Effects ReadySearch playground for areAllEffectsReady
-
Gets a boolean indicating if all created effects are ready
Returns boolean
true if all effects are ready
attach Context Lost EventSearch playground for attachContextLostEvent
-
Attach a new callback raised when context lost event is fired
Parameters
-
callback: (event: WebGLContextEvent) => void
defines the callback to call
-
-
Parameters
-
event: WebGLContextEvent
Returns void
-
-
-
Returns void
-
attach Context Restored EventSearch playground for attachContextRestoredEvent
-
Attach a new callback raised when context restored event is fired
Parameters
-
callback: (event: WebGLContextEvent) => void
defines the callback to call
-
-
Parameters
-
event: WebGLContextEvent
Returns void
-
-
-
Returns void
-
begin FrameSearch playground for beginFrame
-
Begin a new frame
Returns void
bind Array BufferSearch playground for bindArrayBuffer
-
Bind a webGL buffer to the webGL context
Parameters
-
buffer: Nullable<DataBuffer>
defines the buffer to bind
Returns void
-
bind AttachmentsSearch playground for bindAttachments
-
Select a subsets of attachments to draw to.
Parameters
-
attachments: number[]
gl attachments
Returns void
-
bind BuffersSearch playground for bindBuffers
-
Bind a list of vertex buffers to the webGL context
Parameters
-
vertexBuffers: {}
defines the list of vertex buffers to bind
-
[key: string]: Nullable<VertexBuffer>
-
-
indexBuffer: Nullable<DataBuffer>
defines the index buffer to bind
-
effect: Effect
defines the effect associated with the vertex buffers
Returns void
-
bind Buffers DirectlySearch playground for bindBuffersDirectly
-
Bind webGl buffers directly to the webGL context
Parameters
-
vertexBuffer: DataBuffer
defines the vertex buffer to bind
-
indexBuffer: DataBuffer
defines the index buffer to bind
-
vertexDeclaration: number[]
defines the vertex declaration to use with the vertex buffer
-
vertexStrideSize: number
defines the vertex stride of the vertex buffer
-
effect: Effect
defines the effect associated with the vertex buffer
Returns void
-
bind FramebufferSearch playground for bindFramebuffer
-
Binds the frame buffer to the specified texture.
Parameters
-
texture: InternalTexture
The texture to render to or null for the default canvas
-
Optional faceIndex: number
The face of the texture to render to in case of cube texture
-
Optional requiredWidth: number
The width of the target to render to
-
Optional requiredHeight: number
The height of the target to render to
-
Optional forceFullscreenViewport: boolean
Forces the viewport to be the entire texture/screen if true
-
Optional lodLevel: number
defines the lod level to bind to the frame buffer
-
Optional layer: number
defines the 2d array index to bind to frame buffer to
Returns void
-
bind Instances BufferSearch playground for bindInstancesBuffer
-
Bind the content of a webGL buffer used with instantiation
Parameters
-
instancesBuffer: DataBuffer
defines the webGL buffer to bind
-
attributesInfo: InstancingAttributeInfo[]
defines the offsets or attributes information used to determine where data must be stored in the buffer
-
Optional computeStride: boolean
defines Whether to compute the strides from the info or use the default 0
Returns void
-
bind SamplersSearch playground for bindSamplers
-
Binds an effect to the webGL context
Parameters
-
effect: Effect
defines the effect to bind
Returns void
-
bind Uniform BlockSearch playground for bindUniformBlock
-
Bind a specific block at a given index in a specific shader program
Parameters
-
pipelineContext: IPipelineContext
defines the pipeline context to use
-
blockName: string
defines the block name
-
index: number
defines the index where to bind the block
Returns void
-
bind Uniform BufferSearch playground for bindUniformBuffer
-
Bind an uniform buffer to the current webGL context
Parameters
-
buffer: Nullable<DataBuffer>
defines the buffer to bind
Returns void
-
bind Uniform Buffer BaseSearch playground for bindUniformBufferBase
-
Bind a buffer to the current webGL context at a given location
Parameters
-
buffer: DataBuffer
defines the buffer to bind
-
location: number
defines the index where to bind the buffer
-
name: string
Name of the uniform variable to bind
Returns void
-
bind Vertex Array ObjectSearch playground for bindVertexArrayObject
-
Bind a specific vertex array object
Parameters
-
vertexArrayObject: WebGLVertexArrayObject
defines the vertex array object to bind
-
indexBuffer: Nullable<DataBuffer>
defines the index buffer to bind
Returns void
-
build Texture LayoutSearch playground for buildTextureLayout
-
Creates a layout object to draw/clear on specific textures in a MRT
Parameters
-
textureStatus: boolean[]
textureStatus[i] indicates if the i-th is active
Returns number[]
A layout to be fed to the engine, calling
bindAttachments
. -
clearSearch playground for clear
-
Clear the current render buffer or the current render target (if any is set up)
Parameters
-
color: Nullable<IColor4Like>
defines the color to use
-
backBuffer: boolean
defines if the back buffer must be cleared
-
depth: boolean
defines if the depth buffer must be cleared
-
Optional stencil: boolean
defines if the stencil buffer must be cleared
Returns void
-
clear AttachmentsSearch playground for clearAttachments
-
Clears a list of attachments
Parameters
-
attachments: number[]
list of the attachments
-
colorMain: Nullable<IColor4Like>
clear color for the main attachment (the first one)
-
colorOthers: Nullable<IColor4Like>
clear color for the other attachments
-
clearDepth: boolean
true to clear the depth buffer. Used only for the first attachment
-
clearStencil: boolean
true to clear the stencil buffer. Used only for the first attachment
Returns void
-
clear Internal Textures CacheSearch playground for clearInternalTexturesCache
-
Clears the list of texture accessible through engine. This can help preventing texture load conflict due to name collision.
Returns void
create Cube TextureSearch playground for createCubeTexture
-
Creates a cube texture
Parameters
-
rootUrl: string
defines the url where the files to load is located
-
scene: Nullable<Scene>
defines the current scene
-
files: Nullable<string[]>
defines the list of files to load (1 per face)
-
noMipmap: boolean | undefined
defines a boolean indicating that no mipmaps shall be generated (false by default)
-
onLoad: Nullable<(data?: any) => void>
defines an optional callback raised when the texture is loaded
-
onError: Nullable<(message?: string, exception?: any) => void>
defines an optional callback raised if there is an issue to load the texture
-
format: number | undefined
defines the format of the data
-
forcedExtension: any
defines the extension to use to pick the right loader
-
createPolynomials: boolean
if a polynomial sphere should be created for the cube texture
-
lodScale: number
defines the scale applied to environment texture. This manages the range of LOD level used for IBL according to the roughness
-
lodOffset: number
defines the offset applied to environment texture. This manages first LOD level used for IBL according to the roughness
-
fallback: Nullable<InternalTexture>
defines texture to use while falling back when (compressed) texture file not found.
-
loaderOptions: any
options to be passed to the loader
Returns InternalTexture
the cube texture as an InternalTexture
-
-
Creates a cube texture
Parameters
-
rootUrl: string
defines the url where the files to load is located
-
scene: Nullable<Scene>
defines the current scene
-
files: Nullable<string[]>
defines the list of files to load (1 per face)
-
noMipmap: boolean
defines a boolean indicating that no mipmaps shall be generated (false by default)
-
onLoad: Nullable<(data?: any) => void>
defines an optional callback raised when the texture is loaded
-
onError: Nullable<(message?: string, exception?: any) => void>
defines an optional callback raised if there is an issue to load the texture
-
format: number | undefined
defines the format of the data
-
forcedExtension: any
defines the extension to use to pick the right loader
Returns InternalTexture
the cube texture as an InternalTexture
-
-
Creates a cube texture
Parameters
-
rootUrl: string
defines the url where the files to load is located
-
scene: Nullable<Scene>
defines the current scene
-
files: Nullable<string[]>
defines the list of files to load (1 per face)
-
noMipmap: boolean
defines a boolean indicating that no mipmaps shall be generated (false by default)
-
onLoad: Nullable<(data?: any) => void>
defines an optional callback raised when the texture is loaded
-
onError: Nullable<(message?: string, exception?: any) => void>
defines an optional callback raised if there is an issue to load the texture
-
format: number | undefined
defines the format of the data
-
forcedExtension: any
defines the extension to use to pick the right loader
-
createPolynomials: boolean
if a polynomial sphere should be created for the cube texture
-
lodScale: number
defines the scale applied to environment texture. This manages the range of LOD level used for IBL according to the roughness
-
lodOffset: number
defines the offset applied to environment texture. This manages first LOD level used for IBL according to the roughness
Returns InternalTexture
the cube texture as an InternalTexture
-
create Depth Stencil TextureSearch playground for createDepthStencilTexture
-
Creates a depth stencil texture. This is only available in WebGL 2 or with the depth texture extension available.
Parameters
-
size: RenderTargetTextureSize
The size of face edge in the texture.
-
options: DepthTextureCreationOptions
The options defining the texture.
Returns InternalTexture
The texture
-
create Dynamic TextureSearch playground for createDynamicTexture
-
Creates a dynamic texture
Parameters
-
width: number
defines the width of the texture
-
height: number
defines the height of the texture
-
generateMipMaps: boolean
defines if the engine should generate the mip levels
-
samplingMode: number
defines the required sampling mode (Texture.NEAREST_SAMPLINGMODE by default)
Returns InternalTexture
the dynamic texture inside an InternalTexture
-
create Dynamic Uniform BufferSearch playground for createDynamicUniformBuffer
-
Create a dynamic uniform buffer
Parameters
-
elements: FloatArray
defines the content of the uniform buffer
Returns DataBuffer
the webGL uniform buffer
-
create Dynamic Vertex BufferSearch playground for createDynamicVertexBuffer
-
Creates a dynamic vertex buffer
Parameters
-
data: DataArray
the data for the dynamic vertex buffer
Returns DataBuffer
the new WebGL dynamic buffer
-
create EffectSearch playground for createEffect
-
Create a new effect (used to store vertex/fragment shaders)
Parameters
-
baseName: any
defines the base name of the effect (The name of file without .fragment.fx or .vertex.fx)
-
attributesNamesOrOptions: string[] | IEffectCreationOptions
defines either a list of attribute names or an IEffectCreationOptions object
-
uniformsNamesOrEngine: string[] | ThinEngine
defines either a list of uniform names or the engine to use
-
Optional samplers: string[]
defines an array of string used to represent textures
-
Optional defines: string
defines the string containing the defines to use to compile the shaders
-
Optional fallbacks: IEffectFallbacks
defines the list of potential fallbacks to use if shader conmpilation fails
-
Optional onCompiled: Nullable<(effect: Effect) => void>
defines a function to call when the effect creation is successful
-
Optional onError: Nullable<(effect: Effect, errors: string) => void>
defines a function to call when the effect creation has failed
-
Optional indexParameters: any
defines an object containing the index values to use to compile shaders (like the maximum number of simultaneous lights)
Returns Effect
the new Effect
-
create Index BufferSearch playground for createIndexBuffer
-
Creates a new index buffer
Parameters
-
indices: IndicesArray
defines the content of the index buffer
-
Optional updatable: boolean
defines if the index buffer must be updatable
Returns DataBuffer
a new webGL buffer
-
create Multiple Render TargetSearch playground for createMultipleRenderTarget
-
Create a multi render target texture
Parameters
-
size: any
defines the size of the texture
-
options: IMultiRenderTargetOptions
defines the creation options
Returns InternalTexture[]
the cube texture as an InternalTexture
-
create Pipeline ContextSearch playground for createPipelineContext
-
Creates a new pipeline context
Parameters
-
shaderProcessingContext: Nullable<ShaderProcessingContext>
defines the shader processing context used during the processing if available
Returns IPipelineContext
the new pipeline
-
create Prefiltered Cube TextureSearch playground for createPrefilteredCubeTexture
-
Create a cube texture from prefiltered data (ie. the mipmaps contain ready to use data for PBR reflection)
Parameters
-
rootUrl: string
defines the url where the file to load is located
-
scene: Nullable<Scene>
defines the current scene
-
lodScale: number
defines scale to apply to the mip map selection
-
lodOffset: number
defines offset to apply to the mip map selection
-
Optional onLoad: Nullable<(internalTexture: Nullable<InternalTexture>) => void>
defines an optional callback raised when the texture is loaded
-
Optional onError: Nullable<(message?: string, exception?: any) => void>
defines an optional callback raised if there is an issue to load the texture
-
Optional format: number
defines the format of the data
-
Optional forcedExtension: any
defines the extension to use to pick the right loader
-
Optional createPolynomials: boolean
defines wheter or not to create polynomails harmonics for the texture
Returns InternalTexture
the cube texture as an InternalTexture
-
create Raw Cube TextureSearch playground for createRawCubeTexture
-
Creates a new raw cube texture
Parameters
-
data: Nullable<ArrayBufferView[]>
defines the array of data to use to create each face
-
size: number
defines the size of the textures
-
format: number
defines the format of the data
-
type: number
defines the type of the data (like Engine.TEXTURETYPE_UNSIGNED_INT)
-
generateMipMaps: boolean
defines if the engine should generate the mip levels
-
invertY: boolean
defines if data must be stored with Y axis inverted
-
samplingMode: number
defines the required sampling mode (like Texture.NEAREST_SAMPLINGMODE)
-
compression: Nullable<string>
defines the compression used (null by default)
Returns InternalTexture
the cube texture as an InternalTexture
-
create Raw Cube Texture From UrlSearch playground for createRawCubeTextureFromUrl
-
Creates a new raw cube texture from a specified url
Parameters
-
url: string
defines the url where the data is located
-
scene: Nullable<Scene>
defines the current scene
-
size: number
defines the size of the textures
-
format: number
defines the format of the data
-
type: number
defines the type fo the data (like Engine.TEXTURETYPE_UNSIGNED_INT)
-
noMipmap: boolean
defines if the engine should avoid generating the mip levels
-
callback: (ArrayBuffer: ArrayBuffer) => Nullable<ArrayBufferView[]>
defines a callback used to extract texture data from loaded data
-
-
Parameters
-
ArrayBuffer: ArrayBuffer
Returns Nullable<ArrayBufferView[]>
-
-
-
-
mipmapGenerator: Nullable<(faces: ArrayBufferView[]) => ArrayBufferView[][]>
defines to provide an optional tool to generate mip levels
-
onLoad: Nullable<() => void>
defines a callback called when texture is loaded
-
onError: Nullable<(message?: string, exception?: any) => void>
defines a callback called if there is an error
Returns InternalTexture
the cube texture as an InternalTexture
-
-
Creates a new raw cube texture from a specified url
Parameters
-
url: string
defines the url where the data is located
-
scene: Nullable<Scene>
defines the current scene
-
size: number
defines the size of the textures
-
format: number
defines the format of the data
-
type: number
defines the type fo the data (like Engine.TEXTURETYPE_UNSIGNED_INT)
-
noMipmap: boolean
defines if the engine should avoid generating the mip levels
-
callback: (ArrayBuffer: ArrayBuffer) => Nullable<ArrayBufferView[]>
defines a callback used to extract texture data from loaded data
-
-
Parameters
-
ArrayBuffer: ArrayBuffer
Returns Nullable<ArrayBufferView[]>
-
-
-
-
mipmapGenerator: Nullable<(faces: ArrayBufferView[]) => ArrayBufferView[][]>
defines to provide an optional tool to generate mip levels
-
onLoad: Nullable<() => void>
defines a callback called when texture is loaded
-
onError: Nullable<(message?: string, exception?: any) => void>
defines a callback called if there is an error
-
samplingMode: number
defines the required sampling mode (like Texture.NEAREST_SAMPLINGMODE)
-
invertY: boolean
defines if data must be stored with Y axis inverted
Returns InternalTexture
the cube texture as an InternalTexture
-
create Raw Shader ProgramSearch playground for createRawShaderProgram
-
Directly creates a webGL program
Parameters
-
pipelineContext: IPipelineContext
defines the pipeline context to attach to
-
vertexCode: string
defines the vertex shader code to use
-
fragmentCode: string
defines the fragment shader code to use
-
Optional context: WebGLRenderingContext
defines the webGL context to use (if not set, the current one will be used)
-
Optional transformFeedbackVaryings: Nullable<string[]>
defines the list of transform feedback varyings to use
Returns WebGLProgram
the new webGL program
-
create Raw TextureSearch playground for createRawTexture
-
Creates a raw texture
Parameters
-
data: Nullable<ArrayBufferView>
defines the data to store in the texture
-
width: number
defines the width of the texture
-
height: number
defines the height of the texture
-
format: number
defines the format of the data
-
generateMipMaps: boolean
defines if the engine should generate the mip levels
-
invertY: boolean
defines if data must be stored with Y axis inverted
-
samplingMode: number
defines the required sampling mode (Texture.NEAREST_SAMPLINGMODE by default)
-
compression: Nullable<string>
defines the compression used (null by default)
-
type: number
defines the type fo the data (Engine.TEXTURETYPE_UNSIGNED_INT by default)
Returns InternalTexture
the raw texture inside an InternalTexture
-
create Raw Texture2DArraySearch playground for createRawTexture2DArray
-
Creates a new raw 2D array texture
Parameters
-
data: Nullable<ArrayBufferView>
defines the data used to create the texture
-
width: number
defines the width of the texture
-
height: number
defines the height of the texture
-
depth: number
defines the number of layers of the texture
-
format: number
defines the format of the texture
-
generateMipMaps: boolean
defines if the engine must generate mip levels
-
invertY: boolean
defines if data must be stored with Y axis inverted
-
samplingMode: number
defines the required sampling mode (like Texture.NEAREST_SAMPLINGMODE)
-
compression: Nullable<string>
defines the compressed used (can be null)
-
textureType: number
defines the compressed used (can be null)
Returns InternalTexture
a new raw 2D array texture (stored in an InternalTexture)
-
create Raw Texture3DSearch playground for createRawTexture3D
-
Creates a new raw 3D texture
Parameters
-
data: Nullable<ArrayBufferView>
defines the data used to create the texture
-
width: number
defines the width of the texture
-
height: number
defines the height of the texture
-
depth: number
defines the depth of the texture
-
format: number
defines the format of the texture
-
generateMipMaps: boolean
defines if the engine must generate mip levels
-
invertY: boolean
defines if data must be stored with Y axis inverted
-
samplingMode: number
defines the required sampling mode (like Texture.NEAREST_SAMPLINGMODE)
-
compression: Nullable<string>
defines the compressed used (can be null)
-
textureType: number
defines the compressed used (can be null)
Returns InternalTexture
a new raw 3D texture (stored in an InternalTexture)
-
create Render Target Cube TextureSearch playground for createRenderTargetCubeTexture
-
Creates a new render target cube texture
Parameters
-
size: number
defines the size of the texture
-
Optional options: Partial<RenderTargetCreationOptions>
defines the options used to create the texture
Returns InternalTexture
a new render target cube texture stored in an InternalTexture
-
create Render Target TextureSearch playground for createRenderTargetTexture
-
Creates a new render target texture
Parameters
-
size: RenderTargetTextureSize
defines the size of the texture
-
options: boolean | RenderTargetCreationOptions
defines the options used to create the texture
Returns InternalTexture
a new render target texture stored in an InternalTexture
-
create Shader ProgramSearch playground for createShaderProgram
-
Creates a webGL program
Parameters
-
pipelineContext: IPipelineContext
defines the pipeline context to attach to
-
vertexCode: string
defines the vertex shader code to use
-
fragmentCode: string
defines the fragment shader code to use
-
defines: Nullable<string>
defines the string containing the defines to use to compile the shaders
-
Optional context: WebGLRenderingContext
defines the webGL context to use (if not set, the current one will be used)
-
Optional transformFeedbackVaryings: Nullable<string[]>
defines the list of transform feedback varyings to use
Returns WebGLProgram
the new webGL program
-
create TextureSearch playground for createTexture
-
Usually called from Texture.ts. Passed information to create a WebGLTexture
Parameters
-
url: Nullable<string>
defines a value which contains one of the following:
- A conventional http URL, e.g. 'http://...' or 'file://...'
- A base64 string of in-line texture data, e.g. 'data:image/jpg;base64,/...'
- An indicator that data being passed using the buffer parameter, e.g. 'data:mytexture.jpg'
-
noMipmap: boolean
defines a boolean indicating that no mipmaps shall be generated. Ignored for compressed textures. They must be in the file
-
invertY: boolean
when true, image is flipped when loaded. You probably want true. Certain compressed textures may invert this if their default is inverted (eg. ktx)
-
scene: Nullable<ISceneLike>
needed for loading to the correct scene
-
Optional samplingMode: number
mode with should be used sample / access the texture (Default: Texture.TRILINEAR_SAMPLINGMODE)
-
Optional onLoad: Nullable<() => void>
optional callback to be called upon successful completion
-
Optional onError: Nullable<(message: string, exception: any) => void>
optional callback to be called upon failure
-
Optional buffer: Nullable<string | ArrayBuffer | ArrayBufferView | HTMLImageElement | Blob | ImageBitmap>
a source of a file previously fetched as either a base64 string, an ArrayBuffer (compressed or image format), HTMLImageElement (image format), or a Blob
-
Optional fallback: Nullable<InternalTexture>
an internal argument in case the function must be called again, due to etc1 not having alpha capabilities
-
Optional format: Nullable<number>
internal format. Default: RGB when extension is '.jpg' else RGBA. Ignored for compressed textures
-
Optional forcedExtension: Nullable<string>
defines the extension to use to pick the right loader
-
Optional mimeType: string
defines an optional mime type
-
Optional loaderOptions: any
options to be passed to the loader
Returns InternalTexture
a InternalTexture for assignment back into BABYLON.Texture
-
create Uniform BufferSearch playground for createUniformBuffer
-
Create an uniform buffer
Parameters
-
elements: FloatArray
defines the content of the uniform buffer
Returns DataBuffer
the webGL uniform buffer
-
create Vertex BufferSearch playground for createVertexBuffer
-
Creates a vertex buffer
Parameters
-
data: DataArray
the data for the vertex buffer
Returns DataBuffer
the new WebGL static buffer
-
disable Attribute ByIndexSearch playground for disableAttributeByIndex
-
Disable the attribute corresponding to the location in parameter
Parameters
-
attributeLocation: number
defines the attribute location of the attribute to disable
Returns void
-
disable Instance AttributeSearch playground for disableInstanceAttribute
-
Disable the instance attribute corresponding to the location in parameter
Parameters
-
attributeLocation: number
defines the attribute location of the attribute to disable
Returns void
-
disable Instance Attribute ByNameSearch playground for disableInstanceAttributeByName
-
Disable the instance attribute corresponding to the name in parameter
Parameters
-
name: string
defines the name of the attribute to disable
Returns void
-
disposeSearch playground for dispose
-
Dispose and release all associated resources
Returns void
drawSearch playground for draw
-
Send a draw order
Parameters
-
useTriangles: boolean
defines if triangles must be used to draw (else wireframe will be used)
-
indexStart: number
defines the starting index
-
indexCount: number
defines the number of index to draw
-
Optional instancesCount: number
defines the number of instances to draw (if instanciation is enabled)
Returns void
-
draw Arrays TypeSearch playground for drawArraysType
-
Draw a list of unindexed primitives
Parameters
-
fillMode: number
defines the primitive to use
-
verticesStart: number
defines the index of first vertex to draw
-
verticesCount: number
defines the count of vertices to draw
-
Optional instancesCount: number
defines the number of instances to draw (if instanciation is enabled)
Returns void
-
draw Elements TypeSearch playground for drawElementsType
-
Draw a list of indexed primitives
Parameters
-
fillMode: number
defines the primitive to use
-
indexStart: number
defines the starting index
-
indexCount: number
defines the number of index to draw
-
Optional instancesCount: number
defines the number of instances to draw (if instanciation is enabled)
Returns void
-
draw Point CloudsSearch playground for drawPointClouds
-
Draw a list of points
Parameters
-
verticesStart: number
defines the index of first vertex to draw
-
verticesCount: number
defines the count of vertices to draw
-
Optional instancesCount: number
defines the number of instances to draw (if instanciation is enabled)
Returns void
-
draw UnIndexedSearch playground for drawUnIndexed
-
Draw a list of unindexed primitives
Parameters
-
useTriangles: boolean
defines if triangles must be used to draw (else wireframe will be used)
-
verticesStart: number
defines the index of first vertex to draw
-
verticesCount: number
defines the count of vertices to draw
-
Optional instancesCount: number
defines the number of instances to draw (if instanciation is enabled)
Returns void
-
enable EffectSearch playground for enableEffect
end FrameSearch playground for endFrame
-
Enf the current frame
Returns void
flush FramebufferSearch playground for flushFramebuffer
-
Force a webGL flush (ie. a flush of all waiting webGL commands)
Returns void
get Alpha EquationSearch playground for getAlphaEquation
-
Gets the current alpha equation.
Returns number
the current alpha equation
get Alpha ModeSearch playground for getAlphaMode
-
Gets the current alpha mode
Returns number
the current alpha mode
get AttributesSearch playground for getAttributes
-
Gets the list of active attributes for a given webGL program
Parameters
-
pipelineContext: IPipelineContext
defines the pipeline context to use
-
attributesNames: string[]
defines the list of attribute names to get
Returns number[]
an array of indices indicating the offset of each attribute
-
get CapsSearch playground for getCaps
-
Gets the object containing all engine capabilities
Returns EngineCapabilities
the EngineCapabilities object
get Class NameSearch playground for getClassName
-
Gets a string identifying the name of the class
Returns string
"Engine" string
get Color WriteSearch playground for getColorWrite
-
Gets a boolean indicating if color writing is enabled
Returns boolean
the current color writing state
get ErrorSearch playground for getError
-
Get the current error code of the webGL context
Returns number
the error code
get GlInfoSearch playground for getGlInfo
-
Gets an object containing information about the current webGL context
Returns { renderer: string; vendor: string; version: string }
an object containing the vender, the renderer and the version of the current webGL context
-
renderer: string
-
vendor: string
-
version: string
-
get Hardware Scaling LevelSearch playground for getHardwareScalingLevel
-
Gets the current hardware scaling level. By default the hardware scaling level is computed from the window device ratio. if level = 1 then the engine will render at the exact resolution of the canvas. If level = 0.5 then the engine will render at twice the size of the canvas.
Returns number
a number indicating the current hardware scaling level
get Host DocumentSearch playground for getHostDocument
-
Gets host document
Returns Nullable<Document>
the host document object
get Host WindowSearch playground for getHostWindow
get Loaded Textures CacheSearch playground for getLoadedTexturesCache
-
Gets the list of loaded textures
Returns InternalTexture[]
an array containing all loaded textures
get Render HeightSearch playground for getRenderHeight
-
Gets the current render height
Parameters
-
Optional useScreen: boolean
defines if screen size must be used (or the current render target if any)
Returns number
a number defining the current render height
-
get Render WidthSearch playground for getRenderWidth
-
Gets the current render width
Parameters
-
Optional useScreen: boolean
defines if screen size must be used (or the current render target if any)
Returns number
a number defining the current render width
-
get Rendering CanvasSearch playground for getRenderingCanvas
-
Gets the HTML canvas attached with the current webGL context
Returns Nullable<HTMLCanvasElement>
a HTML canvas
get UniformsSearch playground for getUniforms
-
Gets the list of webGL uniform locations associated with a specific program based on a list of uniform names
Parameters
-
pipelineContext: IPipelineContext
defines the pipeline context to use
-
uniformsNames: string[]
defines the list of uniform names
Returns Nullable<WebGLUniformLocation>[]
an array of webGL uniform locations
-
read PixelsSearch playground for readPixels
-
Reads pixels from the current frame buffer. Please note that this function can be slow
Parameters
-
x: number
defines the x coordinate of the rectangle where pixels must be read
-
y: number
defines the y coordinate of the rectangle where pixels must be read
-
width: number
defines the width of the rectangle where pixels must be read
-
height: number
defines the height of the rectangle where pixels must be read
-
Optional hasAlpha: boolean
defines whether the output should have alpha or not (defaults to true)
-
Optional flushRenderer: boolean
true to flush the renderer from the pending commands before reading the pixels
Returns Promise<ArrayBufferView>
a ArrayBufferView promise (Uint8Array) containing RGBA colors
-
record Vertex Array ObjectSearch playground for recordVertexArrayObject
-
Records a vertex array object
Parameters
-
vertexBuffers: {}
defines the list of vertex buffers to store
-
[key: string]: VertexBuffer
-
-
indexBuffer: Nullable<DataBuffer>
defines the index buffer to store
-
effect: Effect
defines the effect to store
Returns WebGLVertexArrayObject
the new vertex array object
-
release EffectsSearch playground for releaseEffects
-
Force the engine to release all cached effects. This means that next effect compilation will have to be done completely even if a similar effect was already compiled
Returns void
release Vertex Array ObjectSearch playground for releaseVertexArrayObject
-
Release and free the memory of a vertex array object
Parameters
-
vao: WebGLVertexArrayObject
defines the vertex array object to delete
Returns void
-
reset Texture CacheSearch playground for resetTextureCache
-
Reset the texture cache to empty state
Returns void
resizeSearch playground for resize
-
Resize the view according to the canvas' size
Parameters
-
Optional forceSetSize: boolean
true to force setting the sizes of the underlying canvas
Returns void
-
restore Default FramebufferSearch playground for restoreDefaultFramebuffer
-
Unbind the current render target and bind the default framebuffer
Returns void
restore Single AttachmentSearch playground for restoreSingleAttachment
-
Restores the webgl state to only draw on the main color attachment
Returns void
run Render LoopSearch playground for runRenderLoop
-
Register and execute a render loop. The engine can have more than one render function
Parameters
-
renderFunction: () => void
defines the function to continuously execute
-
-
Returns void
-
-
Returns void
-
set Alpha ConstantsSearch playground for setAlphaConstants
-
Sets alpha constants used by some alpha blending modes
Parameters
-
r: number
defines the red component
-
g: number
defines the green component
-
b: number
defines the blue component
-
a: number
defines the alpha component
Returns void
-
set Alpha EquationSearch playground for setAlphaEquation
-
Sets the current alpha equation
Parameters
-
equation: number
defines the equation to use (one of the Engine.ALPHA_EQUATION_XXX)
Returns void
-
set Alpha ModeSearch playground for setAlphaMode
-
Sets the current alpha mode
Parameters
-
mode: number
defines the mode to use (one of the Engine.ALPHA_XXX)
-
Optional noDepthWriteChange: boolean
defines if depth writing state should remains unchanged (false by default)
Returns void
-
set ArraySearch playground for setArray
-
Set the value of an uniform to an array of number
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
array: number[] | Float32Array
defines the array of number to store
Returns boolean
true if the value was set
-
set Array2Search playground for setArray2
-
Set the value of an uniform to an array of number (stored as vec2)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
array: number[] | Float32Array
defines the array of number to store
Returns boolean
true if the value was set
-
set Array3Search playground for setArray3
-
Set the value of an uniform to an array of number (stored as vec3)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
array: number[] | Float32Array
defines the array of number to store
Returns boolean
true if the value was set
-
set Array4Search playground for setArray4
-
Set the value of an uniform to an array of number (stored as vec4)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
array: number[] | Float32Array
defines the array of number to store
Returns boolean
true if the value was set
-
set Color WriteSearch playground for setColorWrite
-
Enable or disable color writing
Parameters
-
enable: boolean
defines the state to set
Returns void
-
set FloatSearch playground for setFloat
-
Set the value of an uniform to a number (float)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
value: number
defines the float number to store
Returns boolean
true if the value was transfered
-
set Float2Search playground for setFloat2
-
Set the value of an uniform to a vec2
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
x: number
defines the 1st component of the value
-
y: number
defines the 2nd component of the value
Returns boolean
true if the value was set
-
set Float3Search playground for setFloat3
-
Set the value of an uniform to a vec3
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
x: number
defines the 1st component of the value
-
y: number
defines the 2nd component of the value
-
z: number
defines the 3rd component of the value
Returns boolean
true if the value was set
-
set Float4Search playground for setFloat4
-
Set the value of an uniform to a vec4
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
x: number
defines the 1st component of the value
-
y: number
defines the 2nd component of the value
-
z: number
defines the 3rd component of the value
-
w: number
defines the 4th component of the value
Returns boolean
true if the value was set
-
set Hardware Scaling LevelSearch playground for setHardwareScalingLevel
-
Defines the hardware scaling level. By default the hardware scaling level is computed from the window device ratio. if level = 1 then the engine will render at the exact resolution of the canvas. If level = 0.5 then the engine will render at twice the size of the canvas.
Parameters
-
level: number
defines the level to use
Returns void
-
set IntSearch playground for setInt
-
Set the value of an uniform to a number (int)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
value: number
defines the int number to store
Returns boolean
true if the value was set
-
set Int2Search playground for setInt2
-
Set the value of an uniform to a int2
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
x: number
defines the 1st component of the value
-
y: number
defines the 2nd component of the value
Returns boolean
true if the value was set
-
set Int3Search playground for setInt3
-
Set the value of an uniform to a int3
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
x: number
defines the 1st component of the value
-
y: number
defines the 2nd component of the value
-
z: number
defines the 3rd component of the value
Returns boolean
true if the value was set
-
set Int4Search playground for setInt4
-
Set the value of an uniform to a int4
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
x: number
defines the 1st component of the value
-
y: number
defines the 2nd component of the value
-
z: number
defines the 3rd component of the value
-
w: number
defines the 4th component of the value
Returns boolean
true if the value was set
-
set Int ArraySearch playground for setIntArray
-
Set the value of an uniform to an array of int32
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
array: Int32Array
defines the array of int32 to store
Returns boolean
true if the value was set
-
set Int Array2Search playground for setIntArray2
-
Set the value of an uniform to an array of int32 (stored as vec2)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
array: Int32Array
defines the array of int32 to store
Returns boolean
true if the value was set
-
set Int Array3Search playground for setIntArray3
-
Set the value of an uniform to an array of int32 (stored as vec3)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
array: Int32Array
defines the array of int32 to store
Returns boolean
true if the value was set
-
set Int Array4Search playground for setIntArray4
-
Set the value of an uniform to an array of int32 (stored as vec4)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
array: Int32Array
defines the array of int32 to store
Returns boolean
true if the value was set
-
set MatricesSearch playground for setMatrices
-
Set the value of an uniform to an array of float32 (stored as matrices)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
matrices: Float32Array
defines the array of float32 to store
Returns boolean
true if the value was set
-
set Matrix2x2Search playground for setMatrix2x2
-
Set the value of an uniform to a matrix (2x2)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
matrix: Float32Array
defines the Float32Array representing the 2x2 matrix to store
Returns boolean
true if the value was set
-
set Matrix3x3Search playground for setMatrix3x3
-
Set the value of an uniform to a matrix (3x3)
Parameters
-
uniform: Nullable<WebGLUniformLocation>
defines the webGL uniform location where to store the value
-
matrix: Float32Array
defines the Float32Array representing the 3x3 matrix to store
Returns boolean
true if the value was set
-
set SizeSearch playground for setSize
-
Force a specific size of the canvas
Parameters
-
width: number
defines the new canvas' width
-
height: number
defines the new canvas' height
-
Optional forceSetSize: boolean
true to force setting the sizes of the underlying canvas
Returns boolean
true if the size was changed
-
set TextureSearch playground for setTexture
-
Sets a texture to the according uniform.
Parameters
-
channel: number
The texture channel
-
uniform: Nullable<WebGLUniformLocation>
The uniform to set
-
texture: Nullable<ThinTexture>
The texture to apply
-
name: string
The name of the uniform in the effect
Returns void
-
set Texture ArraySearch playground for setTextureArray
-
Sets an array of texture to the webGL context
Parameters
-
channel: number
defines the channel where the texture array must be set
-
uniform: Nullable<WebGLUniformLocation>
defines the associated uniform location
-
textures: ThinTexture[]
defines the array of textures to bind
-
name: string
name of the channel
Returns void
-
set ViewportSearch playground for setViewport
-
Set the WebGL's viewport
Parameters
-
viewport: IViewportLike
defines the viewport element to be used
-
Optional requiredWidth: number
defines the width required for rendering. If not provided the rendering canvas' width is used
-
Optional requiredHeight: number
defines the height required for rendering. If not provided the rendering canvas' height is used
Returns void
-
stop Render LoopSearch playground for stopRenderLoop
-
stop executing a render loop function and remove it from the execution array
Parameters
-
Optional renderFunction: () => void
defines the function to be removed. If not provided all functions will be removed.
-
-
Returns void
-
-
Returns void
-
un Bind FramebufferSearch playground for unBindFramebuffer
-
Unbind the current render target texture from the webGL context
Parameters
-
texture: InternalTexture
defines the render target texture to unbind
-
Optional disableGenerateMipMaps: boolean
defines a boolean indicating that mipmaps must not be generated
-
Optional onBeforeUnbind: () => void
defines a function which will be called before the effective unbind
-
-
Returns void
-
-
Returns void
-
un Bind Multi Color Attachment FramebufferSearch playground for unBindMultiColorAttachmentFramebuffer
-
Unbind a list of render target textures from the webGL context This is used only when drawBuffer extension or webGL2 are active
Parameters
-
textures: InternalTexture[]
defines the render target textures to unbind
-
disableGenerateMipMaps: boolean
defines a boolean indicating that mipmaps must not be generated
-
Optional onBeforeUnbind: () => void
defines a function which will be called before the effective unbind
-
-
Returns void
-
-
Returns void
-
unbind All AttributesSearch playground for unbindAllAttributes
-
Unbind all vertex attributes from the webGL context
Returns void
unbind All TexturesSearch playground for unbindAllTextures
-
Unbind all textures from the webGL context
Returns void
unbind Instance AttributesSearch playground for unbindInstanceAttributes
-
Unbind all instance attributes
Returns void
update And Bind Instances BufferSearch playground for updateAndBindInstancesBuffer
-
Update the content of a webGL buffer used with instanciation and bind it to the webGL context
Parameters
-
instancesBuffer: DataBuffer
defines the webGL buffer to update and bind
-
data: Float32Array
defines the data to store in the buffer
-
offsetLocations: number[] | InstancingAttributeInfo[]
defines the offsets or attributes information used to determine where data must be stored in the buffer
Returns void
-
update Array BufferSearch playground for updateArrayBuffer
-
update the bound buffer with the given data
Parameters
-
data: Float32Array
defines the data to update
Returns void
-
update Dynamic Index BufferSearch playground for updateDynamicIndexBuffer
-
Update a dynamic index buffer
Parameters
-
indexBuffer: DataBuffer
defines the target index buffer
-
indices: IndicesArray
defines the data to update
-
Optional offset: number
defines the offset in the target index buffer where update should start
Returns void
-
update Dynamic TextureSearch playground for updateDynamicTexture
-
Update the content of a dynamic texture
Parameters
-
texture: Nullable<InternalTexture>
defines the texture to update
-
source: ImageBitmap | ImageData | HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | OffscreenCanvas
defines the source containing the data
-
Optional invertY: boolean
defines if data must be stored with Y axis inverted
-
Optional premulAlpha: boolean
defines if alpha is stored as premultiplied
-
Optional format: number
defines the format of the data
-
Optional forceBindTexture: boolean
if the texture should be forced to be bound eg. after a graphics context loss (Default: false)
Returns void
-
update Dynamic Vertex BufferSearch playground for updateDynamicVertexBuffer
-
Updates a dynamic vertex buffer.
Parameters
-
vertexBuffer: DataBuffer
the vertex buffer to update
-
data: DataArray
the data used to update the vertex buffer
-
Optional byteOffset: number
the byte offset of the data
-
Optional byteLength: number
the byte length of the data
Returns void
-
update Multiple Render Target Texture Sample CountSearch playground for updateMultipleRenderTargetTextureSampleCount
-
Update the sample count for a given multiple render target texture
Parameters
-
textures: Nullable<InternalTexture[]>
defines the textures to update
-
samples: number
defines the sample count to set
Returns number
the effective sample count (could be 0 if multisample render targets are not supported)
-
update Raw Cube TextureSearch playground for updateRawCubeTexture
-
Update a raw cube texture
Parameters
-
texture: InternalTexture
defines the texture to udpdate
-
data: ArrayBufferView[]
defines the data to store
-
format: number
defines the data format
-
type: number
defines the type fo the data (Engine.TEXTURETYPE_UNSIGNED_INT by default)
-
invertY: boolean
defines if data must be stored with Y axis inverted
Returns void
-
-
Update a raw cube texture
Parameters
-
texture: InternalTexture
defines the texture to udpdate
-
data: ArrayBufferView[]
defines the data to store
-
format: number
defines the data format
-
type: number
defines the type fo the data (Engine.TEXTURETYPE_UNSIGNED_INT by default)
-
invertY: boolean
defines if data must be stored with Y axis inverted
-
compression: Nullable<string>
defines the compression used (null by default)
Returns void
-
-
Update a raw cube texture
Parameters
-
texture: InternalTexture
defines the texture to udpdate
-
data: ArrayBufferView[]
defines the data to store
-
format: number
defines the data format
-
type: number
defines the type fo the data (Engine.TEXTURETYPE_UNSIGNED_INT by default)
-
invertY: boolean
defines if data must be stored with Y axis inverted
-
compression: Nullable<string>
defines the compression used (null by default)
-
level: number
defines which level of the texture to update
Returns void
-
update Raw TextureSearch playground for updateRawTexture
-
Update a raw texture
Parameters
-
texture: Nullable<InternalTexture>
defines the texture to update
-
data: Nullable<ArrayBufferView>
defines the data to store in the texture
-
format: number
defines the format of the data
-
invertY: boolean
defines if data must be stored with Y axis inverted
Returns void
-
-
Update a raw texture
Parameters
-
texture: Nullable<InternalTexture>
defines the texture to update
-
data: Nullable<ArrayBufferView>
defines the data to store in the texture
-
format: number
defines the format of the data
-
invertY: boolean
defines if data must be stored with Y axis inverted
-
compression: Nullable<string>
defines the compression used (null by default)
-
type: number
defines the type fo the data (Engine.TEXTURETYPE_UNSIGNED_INT by default)
Returns void
-
update Raw Texture2DArraySearch playground for updateRawTexture2DArray
-
Update a raw 2D array texture
Parameters
-
texture: InternalTexture
defines the texture to update
-
data: Nullable<ArrayBufferView>
defines the data to store
-
format: number
defines the data format
-
invertY: boolean
defines if data must be stored with Y axis inverted
Returns void
-
-
Update a raw 2D array texture
Parameters
-
texture: InternalTexture
defines the texture to update
-
data: Nullable<ArrayBufferView>
defines the data to store
-
format: number
defines the data format
-
invertY: boolean
defines if data must be stored with Y axis inverted
-
compression: Nullable<string>
defines the used compression (can be null)
-
textureType: number
defines the texture Type (Engine.TEXTURETYPE_UNSIGNED_INT, Engine.TEXTURETYPE_FLOAT...)
Returns void
-
update Raw Texture3DSearch playground for updateRawTexture3D
-
Update a raw 3D texture
Parameters
-
texture: InternalTexture
defines the texture to update
-
data: Nullable<ArrayBufferView>
defines the data to store
-
format: number
defines the data format
-
invertY: boolean
defines if data must be stored with Y axis inverted
Returns void
-
-
Update a raw 3D texture
Parameters
-
texture: InternalTexture
defines the texture to update
-
data: Nullable<ArrayBufferView>
defines the data to store
-
format: number
defines the data format
-
invertY: boolean
defines if data must be stored with Y axis inverted
-
compression: Nullable<string>
defines the used compression (can be null)
-
textureType: number
defines the texture Type (Engine.TEXTURETYPE_UNSIGNED_INT, Engine.TEXTURETYPE_FLOAT...)
Returns void
-
update Texture DataSearch playground for updateTextureData
-
Update a portion of an internal texture
Parameters
-
texture: InternalTexture
defines the texture to update
-
imageData: ArrayBufferView
defines the data to store into the texture
-
xOffset: number
defines the x coordinates of the update rectangle
-
yOffset: number
defines the y coordinates of the update rectangle
-
width: number
defines the width of the update rectangle
-
height: number
defines the height of the update rectangle
-
Optional faceIndex: number
defines the face index if texture is a cube (0 by default)
-
Optional lod: number
defines the lod level to update (0 by default)
Returns void
-
update Texture DimensionsSearch playground for updateTextureDimensions
-
Update the dimensions of a texture
Parameters
-
texture: InternalTexture
texture to update
-
width: number
new width of the texture
-
height: number
new height of the texture
-
Optional depth: number
new depth of the texture
Returns void
-
update Texture Sampling ModeSearch playground for updateTextureSamplingMode
-
Update the sampling mode of a given texture
Parameters
-
samplingMode: number
defines the required sampling mode
-
texture: InternalTexture
defines the texture to update
-
Optional generateMipMaps: boolean
defines whether to generate mipmaps for the texture
Returns void
-
update Texture Wrapping ModeSearch playground for updateTextureWrappingMode
-
Update the sampling mode of a given texture
Parameters
-
texture: InternalTexture
defines the texture to update
-
wrapU: Nullable<number>
defines the texture wrap mode of the u coordinates
-
Optional wrapV: Nullable<number>
defines the texture wrap mode of the v coordinates
-
Optional wrapR: Nullable<number>
defines the texture wrap mode of the r coordinates
Returns void
-
update Uniform BufferSearch playground for updateUniformBuffer
-
Update an existing uniform buffer
Parameters
-
uniformBuffer: DataBuffer
defines the target uniform buffer
-
elements: FloatArray
defines the content to update
-
Optional offset: number
defines the offset in the uniform buffer where update should start
-
Optional count: number
defines the size of the data to update
Returns void
-
update Video TextureSearch playground for updateVideoTexture
-
Update a video texture
Parameters
-
texture: Nullable<InternalTexture>
defines the texture to update
-
video: HTMLVideoElement
defines the video element to use
-
invertY: boolean
defines if data must be stored with Y axis inverted
Returns void
-
wipe CachesSearch playground for wipeCaches
-
Force the entire cache to be cleared You should not have to use this function unless your engine needs to share the webGL context with another engine
Parameters
-
Optional bruteForce: boolean
defines a boolean to force clearing ALL caches (including stencil, detoh and alpha states)
Returns void
-
Static CeilingPOTSearch playground for CeilingPOT
-
Find the next highest power of two.
Parameters
-
x: number
Number to start search from.
Returns number
Next highest power of two.
-
Static FloorPOTSearch playground for FloorPOT
-
Find the next lowest power of two.
Parameters
-
x: number
Number to start search from.
Returns number
Next lowest power of two.
-
Static Get Exponent OfTwoSearch playground for GetExponentOfTwo
-
Get the closest exponent of two
Parameters
-
value: number
defines the value to approximate
-
max: number
defines the maximum value to return
-
Optional mode: number
defines how to define the closest value
Returns number
closest exponent of two of the given value
-
Static NearestPOTSearch playground for NearestPOT
-
Find the nearest power of two.
Parameters
-
x: number
Number to start search from.
Returns number
Next nearest power of two.
-
Static Queue New FrameSearch playground for QueueNewFrame
-
Queue a new function into the requested animation frame pool (ie. this function will be executed byt the browser for the next frame)
Parameters
-
func: () => void
the function to be called
-
-
Returns void
-
-
-
Optional requester: any
the object that will request the next frame. Falls back to window.
Returns number
frame number
-
Static is SupportedSearch playground for isSupported
-
Gets a boolean indicating if the engine can be instanciated (ie. if a webGL context can be found)
Returns boolean
true if the engine can be created
The base engine class (root of all engines)