SceneRenderer
Generic scene renderer
Extends VideoRenderer to be used with the particular WebGL engine e.g. Babylon.js or Three.js. Type of the scene is additional parametrization of generic. ScenePlugin written for WebGL engine can be attached to a SceneRenderer. Usually they perform simple scene tasks that can be separated from the main context into atomic building blocks, for example control node of a scene to follow (be attached to) user’s head or replace its geometry with detected face mesh (mask effect).
Extends
Section titled “Extends”ShaderRenderer
<ResultT
>
Extended by
Section titled “Extended by”Type Parameters
Section titled “Type Parameters”ResultT
Section titled “ResultT”ResultT
extends object
= { }
Type of processing results
SceneT
Section titled “SceneT”SceneT
= undefined
Type of renderer’s scene
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new SceneRenderer<
ResultT
,SceneT
>(params
):SceneRenderer
<ResultT
,SceneT
>
Constructor
Parameters
Section titled “Parameters”params
Section titled “params”Parameters of responsive canvas
Returns
Section titled “Returns”SceneRenderer
<ResultT
, SceneT
>
Inherited from
Section titled “Inherited from”Properties
Section titled “Properties”cameraAngle
Section titled “cameraAngle”
protected
cameraAngle:number
Camera vertical angle in radians
Inherited from
Section titled “Inherited from”cameraRatio
Section titled “cameraRatio”
protected
cameraRatio:number
Camera aspect ratio
Inherited from
Section titled “Inherited from”canvas
Section titled “canvas”canvas:
ResponsiveCanvas
Responsive canvas
Inherited from
Section titled “Inherited from”current
Section titled “current”current:
null
|WebGLTexture
=null
Current image texture
Inherited from
Section titled “Inherited from”input?
Section titled “input?”
optional
input:ImageTexture
Input image texture
Inherited from
Section titled “Inherited from”loaded
Section titled “loaded”
protected
loaded:boolean
=false
Loaded state
Inherited from
Section titled “Inherited from”padCtx
Section titled “padCtx”
protected
padCtx: [null
|CanvasRenderingContext2D
,null
|CanvasRenderingContext2D
]
Drawing context of padding canvases
Inherited from
Section titled “Inherited from”plugins
Section titled “plugins”
protected
plugins:Plugin
<ResultT
>[] =[]
Attached plugins
Inherited from
Section titled “Inherited from”scene?
Section titled “scene?”
optional
scene:SceneT
Renderer scene
shader?
Section titled “shader?”
protected
optional
shader:ShaderProgram
Rendering shader
Inherited from
Section titled “Inherited from”shaderCtx
Section titled “shaderCtx”shaderCtx:
null
|WebGL2RenderingContext
=null
Context of the video canvas layer
Inherited from
Section titled “Inherited from”videoRatio
Section titled “videoRatio”
protected
videoRatio:number
Aspect ratio of input video
Inherited from
Section titled “Inherited from”videoSize
Section titled “videoSize”
protected
videoSize:Size
Resolution of input video
Inherited from
Section titled “Inherited from”Methods
Section titled “Methods”addListener()
Section titled “addListener()”addListener<
E
>(event
,listener
):this
Adds the listener function to the end of the listeners array
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
listener
Section titled “listener”RendererEvents
[E
]
The callback function
Returns
Section titled “Returns”this
This EventEmitter
Inherited from
Section titled “Inherited from”addPlugin()
Section titled “addPlugin()”addPlugin(
plugin
):Promise
<void
>
Add render plugin
Initializes the plugin if it’s not loaded yet but renderer is ready. Renderer takes ownership of the plugin instance meaning it will release it when plugin is detached or renderer is disposed itself.
Parameters
Section titled “Parameters”plugin
Section titled “plugin”Plugin
<ResultT
>
Returns
Section titled “Returns”Promise
<void
>
Inherited from
Section titled “Inherited from”dispose()
Section titled “dispose()”dispose():
void
Dispose renderer object
Extended to dispose scene object.
Returns
Section titled “Returns”void
Overrides
Section titled “Overrides”emit()
Section titled “emit()”emit<
E
>(event
, …args
):boolean
Synchronously calls each of the listeners registered for the event
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
…Args
<RendererEvents
[E
]>
Arguments passed to the listeners
Returns
Section titled “Returns”boolean
True if the event had listeners, False otherwise
Inherited from
Section titled “Inherited from”eventNames()
Section titled “eventNames()”eventNames(): (
string
|symbol
)[]
List of emitter’s events
Returns
Section titled “Returns”(string
| symbol
)[]
List of emitter’s events
Inherited from
Section titled “Inherited from”getMaxListeners()
Section titled “getMaxListeners()”getMaxListeners():
number
Maximum number of listeners per event
Returns
Section titled “Returns”number
Maximum number of listeners per event
Inherited from
Section titled “Inherited from”ShaderRenderer
.getMaxListeners
listenerCount()
Section titled “listenerCount()”listenerCount<
E
>(event
):number
The number of listeners listening to the event
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
Returns
Section titled “Returns”number
Number of listeners
Inherited from
Section titled “Inherited from”listeners()
Section titled “listeners()”listeners<
E
>(event
):Function
[]
Copy of the array of listeners for the event
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
Returns
Section titled “Returns”Function
[]
Copy of the listeners array
Inherited from
Section titled “Inherited from”load()
Section titled “load()”load():
Promise
<void
>
Initialize renderer
Initializes rendering context, shader program and buffers.
Returns
Section titled “Returns”Promise
<void
>
Promise resolving when initialization is finished
Inherited from
Section titled “Inherited from”off<
E
>(event
,listener
):this
Removes the listener from the listener array for the event
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
listener
Section titled “listener”RendererEvents
[E
]
The callback function
Returns
Section titled “Returns”this
This EventEmitter
Inherited from
Section titled “Inherited from”on<
E
>(event
,listener
):this
Adds the listener function to the event
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
listener
Section titled “listener”RendererEvents
[E
]
The callback function
Returns
Section titled “Returns”this
This EventEmitter
Inherited from
Section titled “Inherited from”once()
Section titled “once()”once<
E
>(event
,listener
):this
Adds a one-time listener function for the event
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
listener
Section titled “listener”RendererEvents
[E
]
The callback function
Returns
Section titled “Returns”this
This EventEmitter
Inherited from
Section titled “Inherited from”prependListener()
Section titled “prependListener()”prependListener<
E
>(event
,listener
):this
Adds the listener function to the beginning of the listeners array
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
listener
Section titled “listener”RendererEvents
[E
]
The callback function
Returns
Section titled “Returns”this
This EventEmitter
Inherited from
Section titled “Inherited from”ShaderRenderer
.prependListener
prependOnceListener()
Section titled “prependOnceListener()”prependOnceListener<
E
>(event
,listener
):this
Adds a one-time listener function to the beginning of the listeners array
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
listener
Section titled “listener”RendererEvents
[E
]
The callback function
Returns
Section titled “Returns”this
Inherited from
Section titled “Inherited from”ShaderRenderer
.prependOnceListener
rawListeners()
Section titled “rawListeners()”rawListeners<
E
>(event
):Function
[]
Copy of the array of listeners for the event including wrappers
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
Returns
Section titled “Returns”Function
[]
Copy of the listeners array
Inherited from
Section titled “Inherited from”removeAllListeners()
Section titled “removeAllListeners()”removeAllListeners<
E
>(event?
):this
Removes all listeners, or those of the specified event
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”event?
Section titled “event?”E
The name of the event
Returns
Section titled “Returns”this
This EventEmitter
Inherited from
Section titled “Inherited from”ShaderRenderer
.removeAllListeners
removeAllPlugins()
Section titled “removeAllPlugins()”removeAllPlugins():
void
Remove all render plugins
Renderer will dispose all plugins before detaching them.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”ShaderRenderer
.removeAllPlugins
removeListener()
Section titled “removeListener()”removeListener<
E
>(event
,listener
):this
Removes the specified listener from the listener array
Type Parameters
Section titled “Type Parameters”E
extends keyof RendererEvents
Parameters
Section titled “Parameters”E
The name of the event
listener
Section titled “listener”RendererEvents
[E
]
The callback function
Returns
Section titled “Returns”this
This EventEmitter
Inherited from
Section titled “Inherited from”removePlugin()
Section titled “removePlugin()”removePlugin(
plugin
):void
Remove render plugin
Renderer will dispose the plugin before detaching it.
Parameters
Section titled “Parameters”plugin
Section titled “plugin”Plugin
<ResultT
>
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”setMaxListeners()
Section titled “setMaxListeners()”setMaxListeners(
n
):this
Sets maximum number of listeners per event
Parameters
Section titled “Parameters”number
Maximum number of listeners
Returns
Section titled “Returns”this
This EventEmitter
Inherited from
Section titled “Inherited from”ShaderRenderer
.setMaxListeners
setMirror()
Section titled “setMirror()”setMirror(
mirror
):void
Set mirror mode
CanvasRenderer sets mirror mode of ResponsiveCanvas.
Parameters
Section titled “Parameters”mirror
Section titled “mirror”boolean
Mirror the output
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”setMode()
Section titled “setMode()”setMode(
mode
):void
Set fitting mode
CanvasRenderer sets fitting mode of ResponsiveCanvas.
Parameters
Section titled “Parameters”Fitting mode
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”setupCamera()
Section titled “setupCamera()”setupCamera(
ratio
,angle
):void
Set camera parameters
Callback sets up all attached plugins.
Parameters
Section titled “Parameters”number
Camera aspect ratio
number
Camera vertical angle in radians
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”setupPadding()
Section titled “setupPadding()”
protected
setupPadding():void
Setup padding canvases
Callback sets up size of padding canvases.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”setupVideo()
Section titled “setupVideo()”setupVideo(
size
,ratio?
):void
Set video parameters
Callback sets up size of video canvas layer, resizes texture and allocates new storage.
Parameters
Section titled “Parameters”Resolution of input video
ratio?
Section titled “ratio?”number
Aspect ration of input video
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”unload()
Section titled “unload()”unload():
void
Reset renderer
Releases all resources and instances created in load(). Releases rendering context, shader program and buffers.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”update()
Section titled “update()”update(
result
,stream
):Promise
<void
>
Update the scene
Renderers input video frame on corresponding canvas layer.
Parameters
Section titled “Parameters”result
Section titled “result”ResultT
Results of video processing
stream
Section titled “stream”HTMLCanvasElement
Captured video frame
Returns
Section titled “Returns”Promise
<void
>
Promise resolving when update is finished
Inherited from
Section titled “Inherited from”updatePads()
Section titled “updatePads()”
protected
updatePads(stream
):void
Update padding canvases
Updates padding canvases using portions of video frame.
Parameters
Section titled “Parameters”stream
Section titled “stream”HTMLCanvasElement
Captured video frame
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”updatePlugins()
Section titled “updatePlugins()”
protected
updatePlugins(result
,stream
):Promise
<void
>
Update attached plugins
Calls update() of all attached plugins.
Parameters
Section titled “Parameters”result
Section titled “result”ResultT
Results of video processing
stream
Section titled “stream”HTMLCanvasElement
Captured video frame
Returns
Section titled “Returns”Promise
<void
>
Promise resolving when update is finished
Inherited from
Section titled “Inherited from”updateScene()
Section titled “updateScene()”
protected
updateScene():void
Update and render the scene
Virtual method updating and rendering the scene. Overridden by implementation of derived renderer.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”updateVideo()
Section titled “updateVideo()”
protected
updateVideo(stream
):void
Update the video layer
Calls rendering shaders with current input texture.
Parameters
Section titled “Parameters”stream
Section titled “stream”HTMLCanvasElement
Captured video frame
Returns
Section titled “Returns”void