the-world-engine
Version:
three.js based, unity like game engine for browser
42 lines (41 loc) • 1.27 kB
TypeScript
import type { EffectComposer } from "three/examples/jsm/postprocessing/EffectComposer";
import type { Renderer, WebGLRenderer } from "three/src/Three";
/**
* webgl global object.
*
* you can use Unsafe API by casting this to `WebGLGlobalObject`
*/
export interface IReadonlyWebGLGlobalObject {
get renderer(): Omit<Renderer, "domElement">;
get webglRenderer(): WebGLRenderer | null;
get effectComposer(): EffectComposer | null;
}
/**
* webgl global object.
*/
export declare class WebGLGlobalObject implements IReadonlyWebGLGlobalObject {
private readonly _renderer;
private readonly _webglRenderer;
private _effectComposer;
constructor(renderer: Omit<Renderer, "domElement">, webglRenderer: WebGLRenderer | null);
/**
* get abstract renderer.
*/
get renderer(): Omit<Renderer, "domElement">;
/**
* get webgl renderer.
*/
get webglRenderer(): WebGLRenderer | null;
/**
* get effect composer.
*
* if you not use post process, this value is null.
*/
get effectComposer(): EffectComposer | null;
/**
* set effect composer.
*
* this is unsafe API that use only for post process volume.
*/
set effectComposer(effectComposer: EffectComposer | null);
}