@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
50 lines (49 loc) • 2.48 kB
TypeScript
/**
* Sets the layer of the input objects
*
* @remarks
* This should be combined with the layer of a camera. This will allow some objects to be only visible via some cameras.
*/
import { TypedSopNode } from './_Base';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { CoreGroup } from '../../../core/geometry/Group';
import { SopType } from '../../poly/registers/nodes/types/Sop';
export declare enum LayerUpdateMode {
SET = "set",
ADD = "add",
REMOVE = "remove"
}
export declare const UPDATE_MODES: LayerUpdateMode[];
type AvailableLayerIndex = 0 | 1 | 2 | 3;
declare class LayerSopParamsConfig extends NodeParamsConfig {
/** @param group to assign the material to */
group: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
layersCount: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param updateMode */
updateMode0: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param layer */
layer0: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param updateMode */
updateMode1: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param layer */
layer1: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param updateMode */
updateMode2: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param layer */
layer2: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param updateMode */
updateMode3: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
/** @param layer */
layer3: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
}
export declare class LayerSopNode extends TypedSopNode<LayerSopParamsConfig> {
paramsConfig: LayerSopParamsConfig;
static type(): SopType;
initializeNode(): void;
cook(inputCoreGroups: CoreGroup[]): void;
private _updateLayers;
private _updateLayer;
setMode(index: AvailableLayerIndex, mode: LayerUpdateMode): void;
setLayer(index: AvailableLayerIndex, layer: number): void;
}
export {};