@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
32 lines (31 loc) • 1.32 kB
TypeScript
import { ThreejsViewer, ThreejsViewerOptions, ThreejsViewerSetupData } from './Threejs';
import { PhysicalCamera } from 'three-gpu-pathtracer';
import { PathTracingRendererContainer } from '../nodes/rop/utils/pathTracing/PathTracingRendererContainer';
type OnFrameCompleted = () => Promise<void>;
interface RecordingStateOptions {
isRecording: boolean;
onFrameCompleted?: OnFrameCompleted;
recordingSamplesPerFrame?: number;
}
/**
*
*
* pathtracing viewers are created by adding the [PathTracingRenderer](/docs/nodes/rop/PathTracingRenderer) to a camera. They inherit from [ThreejsViewer](/docs/api/ThreejsViewer).
*
*/
export declare class PathTracingViewer<C extends PhysicalCamera> extends ThreejsViewer<PhysicalCamera> {
protected _renderer: PathTracingRendererContainer | undefined;
private _debugElement;
protected _setupFunctions(options: ThreejsViewerOptions<C>): ThreejsViewerSetupData<C> | void;
mount(element: HTMLElement): void;
private _isRecording;
private _onFrameCompleted;
private _recordingSamplesPerFrame;
setRecordingState(options: RecordingStateOptions): void;
updateDebugDisplay(): void;
dispose(): void;
protected _animateWebBound: () => void;
protected _animateWeb(): void;
protected _postRender(delta: number): void;
}
export {};