/** * Copyright (c) 2024-2025 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose */ import { Texture } from '../../mol-gl/webgl/texture.js'; import { WebGLContext } from '../../mol-gl/webgl/context.js'; import { Renderer } from '../../mol-gl/renderer.js'; import { Camera } from '../camera.js'; import { Scene } from '../../mol-gl/scene.js'; import { RenderTarget } from '../../mol-gl/webgl/render-target.js'; import { ParamDefinition as PD } from '../../mol-util/param-definition.js'; import { Helper } from '../helper/helper.js'; import { DrawPass } from './draw.js'; type RenderContext = { renderer: Renderer; camera: Camera; scene: Scene; helper: Helper; }; export declare const TracingParams: { rendersPerFrame: PD.Interval; targetFps: PD.Numeric; steps: PD.Numeric; firstStepSize: PD.Numeric; refineSteps: PD.Numeric; rayDistance: PD.Numeric; thicknessMode: PD.Select<"auto" | "fixed">; minThickness: PD.Numeric; thicknessFactor: PD.Numeric; thickness: PD.Numeric; bounces: PD.Numeric; glow: PD.BooleanParam; shadowEnable: PD.BooleanParam; shadowSoftness: PD.Numeric; shadowThickness: PD.Numeric; }; export type TracingProps = PD.Values; export declare class TracingPass { private readonly webgl; private readonly drawPass; private readonly framebuffer; readonly colorTextureOpaque: Texture; readonly normalTextureOpaque: Texture; readonly shadedTextureOpaque: Texture; private readonly thicknessTarget; private readonly holdTarget; readonly accumulateTarget: RenderTarget; readonly composeTarget: RenderTarget; private readonly traceRenderable; private readonly accumulateRenderable; constructor(webgl: WebGLContext, drawPass: DrawPass); getByteCount(): number; private renderInput; setSize(width: number, height: number): void; reset(): void; private clearAdjustedProps; restart(clearAdjustedProps?: boolean): void; private prevTime; private currTime; private rendersPerFrame; private refineSteps; private steps; private increaseAdjustedProps; private decreaseAdjustedProps; private getAdjustedProps; render(ctx: RenderContext, transparentBackground: boolean, props: TracingProps, iteration: number, forceRenderInput: boolean): void; } export {};