Renderer
Core generic renderer
Renderer is the core visualization part of any application. It’s attached to Engine. Results of processing and captured frame are provided to renderer that updates scene, visualization and application logic according to this data. Basically, renders define two methods load() and update(). The first one is used to initialize all assets and prepare the scene e.g. set up lightning, environment map. Engine will call load() method during pipeline initialization. The second one is used to update the scene using results of video processing. This’s where all the logic happens. By overriding/extending load() and update() you can add any custom logic, interactions, animations, post-processing effects, gesture recognition, physics, etc. to an app. Renderer is a generic abstract class defining common core interfaces.
Extends
Section titled “Extends”EventEmitterT
<RendererEvents
>
Extended by
Section titled “Extended by”Type Parameters
Section titled “Type Parameters”ResultT
Section titled “ResultT”ResultT
Type of processing results
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new Renderer<
ResultT
>():Renderer
<ResultT
>
Constructor
Returns
Section titled “Returns”Renderer
<ResultT
>
Overrides
Section titled “Overrides”Properties
Section titled “Properties”cameraAngle
Section titled “cameraAngle”
protected
cameraAngle:number
Camera vertical angle in radians
cameraRatio
Section titled “cameraRatio”
protected
cameraRatio:number
Camera aspect ratio
loaded
Section titled “loaded”
protected
loaded:boolean
=false
Loaded state
videoRatio
Section titled “videoRatio”
protected
videoRatio:number
Aspect ratio of input video
videoSize
Section titled “videoSize”
protected
videoSize:Size
Resolution of input video
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”dispose()
Section titled “dispose()”dispose():
void
Dispose renderer object
Returns
Section titled “Returns”void
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”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 renderer, all required assets, and the scene. Overridden by derived classes for particular application.
Returns
Section titled “Returns”Promise
<void
>
Promise resolving when initialization is finished
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”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”EventEmitterT
.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”EventEmitterT
.removeAllListeners
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”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”setupCamera()
Section titled “setupCamera()”setupCamera(
ratio
,angle
):void
Set camera parameters
Some video processors statically define camera parameters from just a video resolution. In this cases setupCamera() is used to pass these static camera parameters to renderer.
Parameters
Section titled “Parameters”number
Camera aspect ratio
number
Camera vertical angle in radians
Returns
Section titled “Returns”void
setupVideo()
Section titled “setupVideo()”setupVideo(
size
,ratio?
):void
Set video parameters
Could be overridden to adjust rendering pipeline.
Parameters
Section titled “Parameters”Resolution of input video
ratio?
Section titled “ratio?”number
Aspect ration of input video
Returns
Section titled “Returns”void
unload()
Section titled “unload()”unload():
void
Reset renderer
Releases all resources and instances created in load(). Overridden by derived classes for particular application.
Returns
Section titled “Returns”void
update()
Section titled “update()”update(
result
,stream
):Promise
<void
>
Update the scene
Main method defining the logic of the renderer. Updates the scene according to provided results. Overridden by derived classes for the application.
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
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
updateVideo()
Section titled “updateVideo()”
protected
updateVideo(stream
):void
Update the video layer
Virtual method drawing input video frame. Derived renderer provides implementation.
Parameters
Section titled “Parameters”stream
Section titled “stream”HTMLCanvasElement
Captured video frame
Returns
Section titled “Returns”void