polygonjs-engine
Version:
node-based webgl 3D engine https://polygonjs.com
29 lines (28 loc) • 1.65 kB
TypeScript
/**
* Creates a Mesh Standard Material, which can be extended with GL nodes.
*
* @remarks
* This node can create children, which will be GL nodes. The GLSL code generated by the nodes will extend the Material. This is experimental.
*
*/
import { TypedBuilderMatNode } from './_BaseBuilder';
import { ShaderAssemblerVolume } from '../gl/code/assemblers/materials/Volume';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { AssemblerName } from '../../poly/registers/assemblers/_BaseRegister';
declare class VolumeMatParamsConfig extends NodeParamsConfig {
color: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.COLOR>;
stepSize: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.FLOAT>;
density: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.FLOAT>;
shadowDensity: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.FLOAT>;
lightDir: import("../utils/params/ParamsConfig").ParamTemplate<import("../../poly/ParamType").ParamType.VECTOR3>;
}
export declare class VolumeBuilderMatNode extends TypedBuilderMatNode<ShaderAssemblerVolume, VolumeMatParamsConfig> {
params_config: VolumeMatParamsConfig;
static type(): string;
usedAssembler(): Readonly<AssemblerName.GL_VOLUME>;
protected _create_assembler_controller(): import("../gl/code/Controller").GlAssemblerController<ShaderAssemblerVolume> | undefined;
private _volume_controller;
initializeNode(): void;
cook(): Promise<void>;
}
export {};