@babylonjs/core
Version:
Getting started? Play directly with the Babylon.js API using our [playground](https://playground.babylonjs.com/). It also contains a lot of samples to learn how to use it.
48 lines (47 loc) • 1.64 kB
TypeScript
import type { Nullable, EffectWrapperCreationOptions, AbstractEngine, InternalTexture, Scene } from "../index.js";
import { Observable } from "./observable.js";
import { EffectWrapper } from "../Materials/effectRenderer.js";
/**
* @internal
*/
export declare enum DepthTextureType {
NormalizedViewDepth = 0,
ViewDepth = 1,
ScreenDepth = 2
}
/**
* @internal
*/
export declare class ThinMinMaxReducerPostProcess extends EffectWrapper {
static readonly FragmentUrl = "minmaxRedux";
static readonly Uniforms: string[];
protected _gatherImports(useWebGPU: boolean, list: Promise<any>[]): void;
textureWidth: number;
textureHeight: number;
constructor(name: string, engine?: Nullable<AbstractEngine>, defines?: string, options?: EffectWrapperCreationOptions);
bind(noDefaultBindings?: boolean): void;
}
/**
* @internal
*/
export declare class ThinMinMaxReducer {
readonly onAfterReductionPerformed: Observable<{
min: number;
max: number;
}>;
readonly reductionSteps: Array<ThinMinMaxReducerPostProcess>;
private _depthRedux;
private _depthTextureType;
get depthRedux(): boolean;
set depthRedux(value: boolean);
protected readonly _scene: Scene;
private _textureWidth;
private _textureHeight;
get textureWidth(): number;
get textureHeight(): number;
constructor(scene: Scene, depthRedux?: boolean);
setTextureDimensions(width: number, height: number, depthTextureType?: DepthTextureType): boolean;
readMinMax(texture: InternalTexture): void;
dispose(disposeAll?: boolean): void;
private _recreatePostProcesses;
}