import { ShaderMaterial, ShaderLib } from "three"; import type { IUniform, PointsMaterialParameters, Texture, Color, ShaderMaterialParameters } from "three"; export type PointsUniforms = typeof ShaderLib.points.uniforms; /** * 雾点材质的 uniforms */ export interface FogPointsMaterialUniforms extends Omit { solid: IUniform; exp: IUniform; star: IUniform; } /** * 雾点材质的选项 */ export interface FogPointsMaterialOptions extends Omit { /** * 是否渲染成星星的样式 * @remarks * 否则,将被渲染成球形 */ star?: boolean; /** * 实心因子 * @remarks * 在实心范围内,雾点不会衰减 * @defaultValue 0 */ solid?: number; /** * 雾的衰减指数 * @defaultValue 1 */ exp?: number; /** * 是否使用 geometry 中的 radius 属性 * @remarks * 如果为 true,geometry 中需要定义 radius 属性; */ useRadius?: boolean; /** * 点的大小是否因相机深度而衰减 * @remarks * 仅限透视摄像头 * * @defaultValue true */ sizeAttenuation?: boolean; } export declare class FogPointsMaterial extends ShaderMaterial { readonly isFogPointsMaterial = true; constructor(options?: FogPointsMaterialOptions, shaderMaterialParameters?: ShaderMaterialParameters | null); uniforms: FogPointsUniforms; /** * 使用来自Texture的数据设置点的颜色 * @remarks * 可以选择包括一个alpha通道,通常与 .transparent或.alphaTest。 */ get map(): Texture | null; set map(value: Texture | null); /** * 是否渲染成星星的样式 * @remarks * 否则,将被渲染成球形 */ get star(): boolean; set star(value: boolean); /** * 点的大小 * @defaultValue 1.0 */ get size(): number; set size(value: number); /** * 透明度 * @remarks * 决定整体的透明度 * @defaultValue 1 */ get opacity(): number; set opacity(value: number); /** * 实心因子 * @remarks * 在实心范围内,雾点不会衰减 * @defaultValue 0 */ get solid(): number; set solid(value: number); /** * 雾的衰减指数 * @defaultValue 1 */ get exp(): number; set exp(value: number); get scale(): number; set scale(value: number); get fogDensity(): number; set fogDensity(value: number); get fogNear(): number; set fogNear(value: number); get fogFar(): number; set fogFar(value: number); get fogColor(): Color; set fogColor(value: Color); /** * 点的大小是否因相机深度而衰减 * @remarks * 仅限透视摄像头 * * @defaultValue true */ sizeAttenuation: boolean; } //# sourceMappingURL=FogPointsMaterial.d.ts.map