App class allows you to set up your 3D application more easily. It includes code to init WebGL renderer, load glTF scenes, auto-start animations as well as logic for basic camera controls.


App(container, ctxSettings, preloader)

container - the id of an HTML-element or the HTML-element itself to contain the canvas.
ctxSettings - the WebGL context attributes to be passed in the 'canvas.getContext()' method.
preloader - the application's Preloader.


.clearBkgOnLoad : Boolean

Set the scene background to null after loading a gltf scene. Default is false.

.container : HTMLElement

A container element. This is a parent element for 3D Canvas used for rendering operations.

.scene : Scene

Application main scene.

.camera : Camera

Application main camera.

.clock : Clock

Application clock object.

.controls : null

Application main camera controls object.

.mixer : AnimationMixer

Mixer used to play animations loaded from glTF data.

.preloader : HTMLElement

App preloader element (exists only during scene loading)

.renderer : WebGLRenderer

Application WebGL renderer.

.loader : GLTFLoader

Application glTF loader.

.worldCubemapRes : Number

Resolution of the cubemap texture represeinting the world material. Default is 1024.


.animate () : null

Handler for scene updates: rendering, animations and camera controls. Do not change unless you know what you are doing.

.cleanup () : null

Unload scene and clean up application data.

.enableControls () : null

Enable controls for the main app camera. Depending on the control type specified for the camera this method will give you 'ORBIT', 'FLYING' or static camera.

.getCamera () : Camera

Returns main app camera.

.getHeight () : number

Return calculated container element height.

.getWidth () : number

Return calculated container element width.

.initPostprocessing () : null

Handler for app post-processing initialization. Do not change unless you know what you are doing.

.load (url, loadOkCb, loadErrorCb, autoStart) : null

Load the glTF scene.

.onResize () : null

Handler for canvas resize event. Do not change unless you know what you are doing.

.render () : null

Handler for scene rendering. Do not change unless you know what you are doing.

.run () : null

Starts the application by removing the preloader and starting the rendering cycle.


For more info on how to obtain the source code of this module see this page.