/** * @author alteredq / http://alteredqualia.com/ * Converted to TypeScript */ import * as THREE from 'three'; import { type Pass } from './passes/pass'; /** * EffectComposer * * 基于three.js的EffectComposer,用于管理后处理pass的渲染流程 */ export declare class EffectComposer { renderTarget1: THREE.WebGLRenderTarget; renderTarget2: THREE.WebGLRenderTarget; writeBuffer: THREE.WebGLRenderTarget; readBuffer: THREE.WebGLRenderTarget; passes: Pass[]; normalMaterial: THREE.MeshNormalMaterial; clock: THREE.Clock; renderToScreen: boolean; status: { endabledPassNumber: number; needsColorGBuffer: boolean; needsDepthGBuffer: boolean; needsNormalGBuffer: boolean; version: string; }; gbuffer: Map<'depth' | 'normal' | 'color', THREE.Texture>; constructor(); swapBuffers(): void; addPass(pass: Pass): void; insertPass(pass: Pass, index: number): void; render(renderer: THREE.WebGLRenderer): boolean; setSize(width: number, height: number): void; updateStatus(): void; dispose(): void; }