Class: WebGLRenderer
WebGLRenderer is a wrapper around the three.js WebGLRenderer provides a simple API for managing multiple views.
After construction, the domElement property should be added to the dom.
Example usage:
import { WebGLRenderer } from '@rapidajs/three';
import { Scene, PerspectiveCamera } from 'three';
const renderer = new WebGLRenderer();
// add the renderer domElement to the dom before adding views
document.getElementById('app').appendChild(renderer.domElement);
const scene = new Scene();
const camera = new PerspectiveCamera();
const view = renderer.create.view({
camera,
scene,
});
renderer.render();
Example usage for a view using an effect composer for post processing effects:
import { WebGLRenderer } from '@rapidajs/three';
import { Scene, PerspectiveCamera } from 'three';
const renderer = new WebGLRenderer();
// add the renderer domElement to the dom before adding views
document.getElementById('app').appendChild(renderer.domElement);
const scene = new Scene();
const camera = new PerspectiveCamera();
const view = renderer.create.view({
camera,
scene,
useEffectComposer: true,
});
// get the time elapsed from your render loop
const timeElapsed = 0.1;
// pass the time elapsed to the render method
renderer.render(timeElapsed);
Table of contents
Constructors
Properties
Accessors
Methods
Constructors
constructor
• new WebGLRenderer(params?)
Constructor for a WebGLRenderer
Parameters
| Name | Type | Description |
|---|---|---|
params? | WebGLRendererParams | the params for the new renderer |
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:103
Properties
domElement
• domElement: HTMLElement
The DOM element for the renderer. Should be added to the dom after creating the WebGLRenderer
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:87
orderedViews
• Private orderedViews: WebGLView[] = []
The ordered views according the views zIndex values
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:92
resizeObserver
• Private resizeObserver: ResizeObserver
The resize observer for the renderer dom element
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:97
three
• three: WebGLRenderer
The three js renderer
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:77
views
• views: Map<string, WebGLView>
Views for the webgl renderer
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:82
Accessors
create
• get create(): Object
Retrieves renderer factories
Returns
Object
| Name | Type |
|---|---|
view | (params: WebGLViewParams) => WebGLView |
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:138
Methods
addView
▸ addView(view): void
Adds a view to the renderer
Parameters
| Name | Type | Description |
|---|---|---|
view | WebGLView | the view to add |
Returns
void
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:160
destroy
▸ destroy(): void
Destroys the renderer and all views
Returns
void
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:171
onResize
▸ Private onResize(): void
Handles resizing
Returns
void
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:226
removeView
▸ removeView(view): void
Removes a view from the renderer
Parameters
| Name | Type | Description |
|---|---|---|
view | WebGLView | the view to remove |
Returns
void
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:184
render
▸ render(timeElapsed?): void
Renders all views
Parameters
| Name | Type | Description |
|---|---|---|
timeElapsed? | number | the time elapsed, required if using an effect composer with time based postprocessing effects |
Returns
void
Defined in
packages/three/src/renderer/webgl/webgl-renderer.ts:196
sortViews
▸ Private sortViews(): void
Sorts the views in the renderer by their z index
Returns
void