UNPKG

molstar

Version:

A comprehensive macromolecular library.

69 lines (68 loc) 2.39 kB
/** * Copyright (c) 2024-2025 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose <alexander.rose@weirdbyte.de> */ import { Texture } from '../../mol-gl/webgl/texture'; import { WebGLContext } from '../../mol-gl/webgl/context'; import { Renderer } from '../../mol-gl/renderer'; import { Camera } from '../camera'; import { Scene } from '../../mol-gl/scene'; import { RenderTarget } from '../../mol-gl/webgl/render-target'; import { ParamDefinition as PD } from '../../mol-util/param-definition'; import { Helper } from '../helper/helper'; import { DrawPass } from './draw'; 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<typeof TracingParams>; 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); 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 {};