UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

41 lines (40 loc) 2.23 kB
import { Constructor } from '../../../../types/GlobalTypes'; import { Material } from 'three'; import { TypedMatNode } from '../_Base'; import { BaseController } from './_BaseController'; import { NodeParamsConfig } from '../../utils/params/ParamsConfig'; export declare function PCSSParamConfig<TBase extends Constructor>(Base: TBase): { new (...args: any[]): { /** @param if on, the material will blur shadows cast on this object. Note that you should adjust the near parameter of the light shadow to get the result visible */ shadowPCSS: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.BOOLEAN>; /** @param shadowPCSSFilterSize PCSS Shadow filter size */ shadowPCSSFilterSize: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.FLOAT>; }; } & TBase; declare const PCSSParamsConfig_base: { new (...args: any[]): { /** @param if on, the material will blur shadows cast on this object. Note that you should adjust the near parameter of the light shadow to get the result visible */ shadowPCSS: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.BOOLEAN>; /** @param shadowPCSSFilterSize PCSS Shadow filter size */ shadowPCSSFilterSize: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.FLOAT>; }; } & typeof NodeParamsConfig; declare class PCSSParamsConfig extends PCSSParamsConfig_base { } export interface PCSSControllers { PCSS: PCSSController; } declare abstract class PCSSMapMatNode extends TypedMatNode<Material, PCSSParamsConfig> { controllers: PCSSControllers; material(): Promise<Material | undefined>; } export declare class PCSSController extends BaseController { protected node: PCSSMapMatNode; constructor(node: PCSSMapMatNode); static filterFragmentShader(node: PCSSMapMatNode, fragmentShader: string): string; static update(node: PCSSMapMatNode): Promise<void>; update(): Promise<void>; updateMaterial(material: Material): void; static PARAM_CALLBACK_setRecompileRequired(node: PCSSMapMatNode): void; } export {};