@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
32 lines (31 loc) • 1.92 kB
TypeScript
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { SopType } from '../../poly/registers/nodes/types/Sop';
declare class LODSopParamsConfig extends NodeParamsConfig {
/** @param distance when switching between high res and mid res (first input and second input) */
distance0: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
/** @param distance when switching between mid res and low res (second input and third input) */
distance1: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
/** @param Threshold used to avoid flickering at LOD boundaries, as a fraction of distance */
hysteresis: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
/** @param sets if the switch is done automatically */
autoUpdate: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
/** @param updates which object is displayed manually */
update: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BUTTON>;
/** @param sets which camera will be used when the switch is to be done manually */
camera: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.NODE_PATH>;
}
export declare class LodSopNode extends TypedSopNode<LODSopParamsConfig> {
paramsConfig: LODSopParamsConfig;
static type(): SopType;
private _lod;
initializeNode(): void;
private _createLOD;
cook(inputCoreGroups: CoreGroup[]): void;
_addLevel(coreGroup: CoreGroup | undefined, level: number): void;
private _clearLOD;
static PARAM_CALLBACK_update(node: LodSopNode): void;
private _updateLOD;
}
export {};