@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
49 lines (48 loc) • 2.2 kB
TypeScript
import { ShaderMaterial } from 'three';
import { BaseShaderAssemblerVolume } from './_BaseVolume';
import { ShaderName } from '../../../../utils/shaders/ShaderName';
import { OutputGlNode } from '../../../Output';
import { GlConnectionPointType, GlConnectionPoint } from '../../../../utils/io/connections/Gl';
import { ShaderConfig } from '../../configs/ShaderConfig';
import { VariableConfig } from '../../configs/VariableConfig';
import { GlobalsGlNode } from '../../../Globals';
import { ShadersCollectionController } from '../../utils/ShadersCollectionController';
export declare class ShaderAssemblerVolume extends BaseShaderAssemblerVolume {
templateShader(): {
vertexShader: string;
fragmentShader: string;
uniforms: {
u_Color: {
value: import("three").Color;
};
u_VolumeDensity: {
value: number;
};
u_ShadowDensity: {
value: number;
};
u_StepSize: {
value: number;
};
u_BoundingBoxMin: {
value: import("three").Vector3;
};
u_BoundingBoxMax: {
value: import("three").Vector3;
};
u_DirectionalLightDirection: {
value: import("three").Vector3;
};
};
};
createMaterial(): ShaderMaterial;
add_output_inputs(output_child: OutputGlNode): void;
static create_globals_node_output_connections(): (GlConnectionPoint<GlConnectionPointType.VEC3> | GlConnectionPoint<GlConnectionPointType.FLOAT>)[];
create_globals_node_output_connections(): (GlConnectionPoint<GlConnectionPointType.VEC3> | GlConnectionPoint<GlConnectionPointType.FLOAT>)[];
protected insertBodyAfter(shader_name: ShaderName): string | undefined;
protected linesToRemove(shader_name: ShaderName): string[] | undefined;
create_shader_configs(): ShaderConfig[];
static create_variable_configs(): VariableConfig[];
create_variable_configs(): VariableConfig[];
set_node_lines_globals(globals_node: GlobalsGlNode, shaders_collection_controller: ShadersCollectionController): void;
}