import { ShaderMaterialParameters } from './ShaderMaterial'; import { IUniform } from '../renderers/shaders/UniformsLib'; import { MaterialParameters, Material } from './Material'; /** * @deprecated Use {@link PointsMaterial THREE.PointsMaterial} instead */ /** * @deprecated Use {@link PointsMaterial THREE.PointsMaterial} instead */ /** * @deprecated Use {@link PointsMaterial THREE.PointsMaterial} instead */ export interface ShaderMaterialParameters extends MaterialParameters { defines?: any; uniforms?: any; vertexShader?: string; fragmentShader?: string; lineWidth?: number; wireframe?: boolean; wireframeLinewidth?: number; lights?: boolean; clipping?: boolean; skinning?: boolean; morphTargets?: boolean; morphNormals?: boolean; } export class ShaderMaterial extends Material { constructor(parameters?: ShaderMaterialParameters); defines: any; uniforms: { [uniform: string]: IUniform }; vertexShader: string; fragmentShader: string; linewidth: number; wireframe: boolean; wireframeLinewidth: number; lights: boolean; clipping: boolean; skinning: boolean; morphTargets: boolean; morphNormals: boolean; /** * @deprecated Use {@link ShaderMaterial#extensions.derivatives extensions.derivatives} instead. */ derivatives: any; extensions: { derivatives: boolean; fragDepth: boolean; drawBuffers: boolean; shaderTextureLOD: boolean; }; defaultAttributeValues: any; index0AttributeName: string | undefined; setValues(parameters: ShaderMaterialParameters): void; toJSON(meta: any): any; }