UNPKG

@polygonjs/polygonjs

Version:

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

55 lines (54 loc) 3.46 kB
import { Constructor } from '../../../../types/GlobalTypes'; import { TypedMatNode } from '../_Base'; import { BaseTextureMapController } from './_BaseTextureController'; import { NodeParamsConfig } from '../../utils/params/ParamsConfig'; import { MeshPhongMaterial, MeshPhysicalMaterial } from 'three'; import { MeshStandardMaterial } from 'three'; import { MeshLambertMaterial } from 'three'; import { MeshToonMaterial } from 'three'; import { MaterialTexturesRecord, SetParamsTextureNodesRecord } from './_BaseController'; export declare function EmissiveMapParamConfig<TBase extends Constructor>(Base: TBase): { new (...args: any[]): { /** @param emissive color */ emissive: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.COLOR>; /** @param toggle if you want to use a emissive map */ useEmissiveMap: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.BOOLEAN>; /** @param specify the emissive map COP node */ emissiveMap: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.NODE_PATH>; /** @param emissive intensity */ emissiveIntensity: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.FLOAT>; }; } & TBase; type TextureEmissiveMapControllerCurrentMaterial = MeshPhongMaterial | MeshLambertMaterial | MeshStandardMaterial | MeshPhysicalMaterial | MeshToonMaterial; declare const TextureEmissiveMapParamsConfig_base: { new (...args: any[]): { /** @param emissive color */ emissive: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.COLOR>; /** @param toggle if you want to use a emissive map */ useEmissiveMap: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.BOOLEAN>; /** @param specify the emissive map COP node */ emissiveMap: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.NODE_PATH>; /** @param emissive intensity */ emissiveIntensity: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.FLOAT>; }; } & typeof NodeParamsConfig; declare class TextureEmissiveMapParamsConfig extends TextureEmissiveMapParamsConfig_base { } export interface TextureEmissiveMapControllers { emissiveMap: TextureEmissiveMapController; } declare abstract class TextureEmissiveMapMatNode extends TypedMatNode<TextureEmissiveMapControllerCurrentMaterial, TextureEmissiveMapParamsConfig> { controllers: TextureEmissiveMapControllers; material(): Promise<TextureEmissiveMapControllerCurrentMaterial | undefined>; } export declare class TextureEmissiveMapController extends BaseTextureMapController { protected node: TextureEmissiveMapMatNode; constructor(node: TextureEmissiveMapMatNode); initializeNode(): void; static update(node: TextureEmissiveMapMatNode): Promise<void>; update(): Promise<void>; updateMaterial(material: TextureEmissiveMapControllerCurrentMaterial): Promise<void>; getTextures(material: TextureEmissiveMapControllerCurrentMaterial, record: MaterialTexturesRecord): void; setParamsFromMaterial(material: TextureEmissiveMapControllerCurrentMaterial, record: SetParamsTextureNodesRecord): void; } export {};