@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
35 lines (27 loc) • 971 B
text/typescript
import {WebGLRenderTarget} from 'three';
import {WebGLRenderer} from 'three';
export class PassWithHooks {
// if set to true, the pass is processed by the composer
public enabled = true;
// if set to true, the pass indicates to swap read and write buffer after rendering
public needsSwap = true;
// if set to true, the pass clears its buffer before rendering
public clear = false;
// if set to true, the result of the pass is rendered to screen. This is set automatically by EffectComposer.
public renderToScreen = false;
//
public updatesRender = true;
constructor() {}
setSize(width: number, height: number) {}
render(
renderer: WebGLRenderer,
writeBuffer: WebGLRenderTarget,
readBuffer: WebGLRenderTarget,
deltaTime: number,
maskActive: boolean /* renderer, writeBuffer, readBuffer, deltaTime, maskActive */
) {
console.error('THREE.Pass: .render() must be implemented in derived pass.');
}
onBeforeRender() {}
onAfterRender() {}
}