@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
36 lines (35 loc) • 1.98 kB
TypeScript
import { Constructor } from '../../../../types/GlobalTypes';
import { MeshLambertMaterial, MeshMatcapMaterial, MeshNormalMaterial, MeshPhongMaterial, MeshStandardMaterial } from 'three';
import { TypedMatNode } from '../_Base';
import { BaseController, SetParamsTextureNodesRecord } from './_BaseController';
import { NodeParamsConfig } from '../../utils/params/ParamsConfig';
export declare function FlatShadingParamConfig<TBase extends Constructor>(Base: TBase): {
new (...args: any[]): {
/** @param defines if the material is flat shaded */
flatShading: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.BOOLEAN>;
};
} & TBase;
declare const FlatShadingParamsConfig_base: {
new (...args: any[]): {
/** @param defines if the material is flat shaded */
flatShading: import("../../utils/params/ParamsConfig").ParamTemplate<import("../../../index_all").ParamType.BOOLEAN>;
};
} & typeof NodeParamsConfig;
declare class FlatShadingParamsConfig extends FlatShadingParamsConfig_base {
}
export interface FlatShadingControllers {
flatShading: FlatShadingController;
}
type FlatShadingControllerCurrentMaterial = MeshLambertMaterial | MeshMatcapMaterial | MeshNormalMaterial | MeshPhongMaterial | MeshStandardMaterial;
declare abstract class FlatShadingMapMatNode extends TypedMatNode<FlatShadingControllerCurrentMaterial, FlatShadingParamsConfig> {
controllers: FlatShadingControllers;
material(): Promise<FlatShadingControllerCurrentMaterial | undefined>;
}
export declare class FlatShadingController extends BaseController {
protected node: FlatShadingMapMatNode;
constructor(node: FlatShadingMapMatNode);
static update(node: FlatShadingMapMatNode): Promise<void>;
updateMaterial(material: FlatShadingControllerCurrentMaterial): void;
setParamsFromMaterial(material: FlatShadingControllerCurrentMaterial, record: SetParamsTextureNodesRecord): void;
}
export {};