threepipe
Version:
A modern 3D viewer framework built on top of three.js, written in TypeScript, designed to make creating high-quality, modular, and extensible 3D experiences on the web simple and enjoyable.
88 lines • 3.89 kB
TypeScript
import { Material, WebGLProgramParametersWithUniforms, WebGLRenderer } from 'three';
import { MaterialExtension } from '../../materials';
import { IMaterial, IMaterialSetDirtyOptions } from '../IMaterial';
import { ITexture } from '../ITexture';
export declare const iMaterialCommons: {
readonly threeMaterialPropList: {
name: string;
blending: 1;
side: 0;
vertexColors: boolean;
opacity: number;
transparent: boolean;
blendSrc: 204;
blendDst: 205;
blendEquation: 100;
blendSrcAlpha: null;
blendDstAlpha: null;
blendEquationAlpha: null;
blendColor: string;
blendAlpha: number;
depthFunc: 3;
depthTest: boolean;
depthWrite: boolean;
stencilWriteMask: number;
stencilFunc: 519;
stencilRef: number;
stencilFuncMask: number;
stencilFail: 7680;
stencilZFail: 7680;
stencilZPass: 7680;
stencilWrite: boolean;
clippingPlanes: null;
clipIntersection: boolean;
clipShadows: boolean;
shadowSide: null;
colorWrite: boolean;
precision: null;
polygonOffset: boolean;
polygonOffsetFactor: number;
polygonOffsetUnits: number;
dithering: boolean;
alphaToCoverage: boolean;
premultipliedAlpha: boolean;
forceSinglePass: boolean;
allowOverride: boolean;
visible: boolean;
toneMapped: boolean;
userData: {};
alphaTest: number;
alphaHash: boolean;
};
readonly threeMaterialInterpolateProps: string[];
readonly setDirty: (this: IMaterial, options?: IMaterialSetDirtyOptions) => void;
/** @ignore */
readonly setValues: (superSetValues: Material["setValues"]) => IMaterial["setValues"];
/** @ignore */
readonly dispose: (superDispose: Material["dispose"]) => IMaterial["dispose"];
/** @ignore */
readonly clone: (superClone: Material["clone"]) => IMaterial["clone"];
/** @ignore */
readonly dispatchEvent: (superDispatchEvent: Material["dispatchEvent"]) => IMaterial["dispatchEvent"];
readonly customProgramCacheKey: (this: IMaterial) => string;
readonly registerMaterialExtensions: (this: IMaterial, customMaterialExtensions: MaterialExtension[]) => void;
readonly unregisterMaterialExtensions: (this: IMaterial, customMaterialExtensions: MaterialExtension[]) => void;
readonly onBeforeCompile: (this: IMaterial, shader: WebGLProgramParametersWithUniforms, renderer: WebGLRenderer) => void;
/** @ignore */
readonly onBeforeRender: IMaterial["onBeforeRender"];
/** @ignore */
readonly onAfterRender: IMaterial["onAfterRender"];
/** @ignore */
readonly onBeforeCompileOverride: (superOnBeforeCompile: Material["onBeforeCompile"]) => IMaterial["onBeforeCompile"];
/** @ignore */
readonly onBeforeRenderOverride: (superOnBeforeRender: Material["onBeforeRender"]) => IMaterial["onBeforeRender"];
/** @ignore */
readonly onAfterRenderOverride: (superOnAfterRender: Material["onAfterRender"]) => IMaterial["onAfterRender"];
/** @ignore */
readonly customProgramCacheKeyOverride: (superCustomPropertyCacheKey: Material["customProgramCacheKey"]) => IMaterial["customProgramCacheKey"];
readonly upgradeMaterial: typeof upgradeMaterial;
readonly getMapsForMaterial: (this: IMaterial) => Map<string, ITexture<import('three').TextureEventMap>>;
readonly refreshTextureRefs: (this: IMaterial) => void;
};
export declare const materialTextureProperties: Set<string>;
export declare const materialTexturePropertiesUserData: Set<string>;
/**
* Convert a standard three.js {@link Material} to {@link IMaterial}
*/
export declare function upgradeMaterial(this: IMaterial): IMaterial;
//# sourceMappingURL=../../src/core/material/iMaterialCommons.d.ts.map