@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
42 lines (41 loc) • 2.34 kB
TypeScript
/**
* Uses a flat mesh and renders soft contact shadows on it
*
*
*/
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { SopType } from '../../poly/registers/nodes/types/Sop';
import { Object3D } from 'three';
import { ContactShadowController } from '../../../core/contactShadows/ContactShadow';
declare class ContactShadowsSopParamsConfig extends NodeParamsConfig {
renderAllObjects: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
objects: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
/** @param distance from the ground up to which shadows are visible */
dist: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
/** @param shadow resolution */
shadowRes: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR2>;
/** @param shadow opacity */
opacity: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
/** @param blur amount */
blur: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
/** @param toggle on to add a secondary blur, which may be useful to get rid of artefacts */
tblur2: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
/** @param secondary blur amount */
blur2: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
/** @param show helper */
showHelper: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
}
export declare class ContactShadowsSopNode extends TypedSopNode<ContactShadowsSopParamsConfig> {
paramsConfig: ContactShadowsSopParamsConfig;
static type(): SopType;
initializeNode(): void;
private _planeOperation;
cook(inputCoreGroups: CoreGroup[]): void;
private _defaultCoreGroup;
updateObjectOnAdd(object: Object3D, parent: Object3D): void;
private _lastContactShadowsController;
lastContactShadowsController(): ContactShadowController | undefined;
}
export {};