123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581 |
- declare module BABYLON {
- class ShadowOnlyMaterial extends PushMaterial {
- private _renderId;
- private _activeLight;
- constructor(name: string, scene: Scene);
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- activeLight: IShadowLight;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- clone(name: string): ShadowOnlyMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): ShadowOnlyMaterial;
- }
- }
- declare module BABYLON {
- class GradientMaterial extends PushMaterial {
- private _maxSimultaneousLights;
- maxSimultaneousLights: number;
- topColor: Color3;
- topColorAlpha: number;
- bottomColor: Color3;
- bottomColorAlpha: number;
- offset: number;
- smoothness: number;
- disableLighting: boolean;
- private _scaledDiffuse;
- private _renderId;
- constructor(name: string, scene: Scene);
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- getAnimatables(): IAnimatable[];
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): GradientMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): GradientMaterial;
- }
- }
- declare module BABYLON {
- class NormalMaterial extends PushMaterial {
- private _diffuseTexture;
- diffuseTexture: BaseTexture;
- diffuseColor: Color3;
- private _disableLighting;
- disableLighting: boolean;
- private _maxSimultaneousLights;
- maxSimultaneousLights: number;
- private _renderId;
- constructor(name: string, scene: Scene);
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- getAnimatables(): IAnimatable[];
- getActiveTextures(): BaseTexture[];
- hasTexture(texture: BaseTexture): boolean;
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): NormalMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): NormalMaterial;
- }
- }
- declare module BABYLON {
- class LavaMaterial extends PushMaterial {
- private _diffuseTexture;
- diffuseTexture: BaseTexture;
- noiseTexture: BaseTexture;
- fogColor: Color3;
- speed: number;
- movingSpeed: number;
- lowFrequencySpeed: number;
- fogDensity: number;
- private _lastTime;
- diffuseColor: Color3;
- private _disableLighting;
- disableLighting: boolean;
- private _maxSimultaneousLights;
- maxSimultaneousLights: number;
- private _scaledDiffuse;
- private _renderId;
- constructor(name: string, scene: Scene);
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- getAnimatables(): IAnimatable[];
- getActiveTextures(): BaseTexture[];
- hasTexture(texture: BaseTexture): boolean;
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): LavaMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): LavaMaterial;
- }
- }
- declare module BABYLON {
- class SimpleMaterial extends PushMaterial {
- private _diffuseTexture;
- diffuseTexture: BaseTexture;
- diffuseColor: Color3;
- private _disableLighting;
- disableLighting: boolean;
- private _maxSimultaneousLights;
- maxSimultaneousLights: number;
- private _renderId;
- constructor(name: string, scene: Scene);
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- getAnimatables(): IAnimatable[];
- getActiveTextures(): BaseTexture[];
- hasTexture(texture: BaseTexture): boolean;
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): SimpleMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): SimpleMaterial;
- }
- }
- declare module BABYLON {
- class WaterMaterial extends PushMaterial {
- renderTargetSize: Vector2;
- private _bumpTexture;
- bumpTexture: BaseTexture;
- diffuseColor: Color3;
- specularColor: Color3;
- specularPower: number;
- private _disableLighting;
- disableLighting: boolean;
- private _maxSimultaneousLights;
- maxSimultaneousLights: number;
- /**
- * @param {number}: Represents the wind force
- */
- windForce: number;
- /**
- * @param {Vector2}: The direction of the wind in the plane (X, Z)
- */
- windDirection: Vector2;
- /**
- * @param {number}: Wave height, represents the height of the waves
- */
- waveHeight: number;
- /**
- * @param {number}: Bump height, represents the bump height related to the bump map
- */
- bumpHeight: number;
- /**
- * @param {boolean}: Add a smaller moving bump to less steady waves.
- */
- private _bumpSuperimpose;
- bumpSuperimpose: boolean;
- /**
- * @param {boolean}: Color refraction and reflection differently with .waterColor2 and .colorBlendFactor2. Non-linear (physically correct) fresnel.
- */
- private _fresnelSeparate;
- fresnelSeparate: boolean;
- /**
- * @param {boolean}: bump Waves modify the reflection.
- */
- private _bumpAffectsReflection;
- bumpAffectsReflection: boolean;
- /**
- * @param {number}: The water color blended with the refraction (near)
- */
- waterColor: Color3;
- /**
- * @param {number}: The blend factor related to the water color
- */
- colorBlendFactor: number;
- /**
- * @param {number}: The water color blended with the reflection (far)
- */
- waterColor2: Color3;
- /**
- * @param {number}: The blend factor related to the water color (reflection, far)
- */
- colorBlendFactor2: number;
- /**
- * @param {number}: Represents the maximum length of a wave
- */
- waveLength: number;
- /**
- * @param {number}: Defines the waves speed
- */
- waveSpeed: number;
- protected _renderTargets: SmartArray<RenderTargetTexture>;
- private _mesh;
- private _refractionRTT;
- private _reflectionRTT;
- private _reflectionTransform;
- private _lastTime;
- private _lastDeltaTime;
- private _renderId;
- private _useLogarithmicDepth;
- private _waitingRenderList;
- /**
- * Constructor
- */
- constructor(name: string, scene: Scene, renderTargetSize?: Vector2);
- useLogarithmicDepth: boolean;
- readonly refractionTexture: Nullable<RenderTargetTexture>;
- readonly reflectionTexture: Nullable<RenderTargetTexture>;
- addToRenderList(node: any): void;
- enableRenderTargets(enable: boolean): void;
- getRenderList(): Nullable<AbstractMesh[]>;
- readonly renderTargetsEnabled: boolean;
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- private _createRenderTargets(scene, renderTargetSize);
- getAnimatables(): IAnimatable[];
- getActiveTextures(): BaseTexture[];
- hasTexture(texture: BaseTexture): boolean;
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): WaterMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): WaterMaterial;
- static CreateDefaultMesh(name: string, scene: Scene): Mesh;
- }
- }
- declare module BABYLON {
- class FireMaterial extends PushMaterial {
- private _diffuseTexture;
- diffuseTexture: Nullable<BaseTexture>;
- private _distortionTexture;
- distortionTexture: Nullable<BaseTexture>;
- private _opacityTexture;
- opacityTexture: Nullable<BaseTexture>;
- diffuseColor: Color3;
- speed: number;
- private _scaledDiffuse;
- private _renderId;
- private _lastTime;
- constructor(name: string, scene: Scene);
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- getAnimatables(): IAnimatable[];
- getActiveTextures(): BaseTexture[];
- hasTexture(texture: BaseTexture): boolean;
- getClassName(): string;
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): FireMaterial;
- serialize(): any;
- static Parse(source: any, scene: Scene, rootUrl: string): FireMaterial;
- }
- }
- declare module BABYLON {
- class FurMaterial extends PushMaterial {
- private _diffuseTexture;
- diffuseTexture: BaseTexture;
- private _heightTexture;
- heightTexture: BaseTexture;
- diffuseColor: Color3;
- furLength: number;
- furAngle: number;
- furColor: Color3;
- furOffset: number;
- furSpacing: number;
- furGravity: Vector3;
- furSpeed: number;
- furDensity: number;
- furOcclusion: number;
- furTexture: DynamicTexture;
- private _disableLighting;
- disableLighting: boolean;
- private _maxSimultaneousLights;
- maxSimultaneousLights: number;
- highLevelFur: boolean;
- _meshes: AbstractMesh[];
- private _renderId;
- private _furTime;
- constructor(name: string, scene: Scene);
- furTime: number;
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- updateFur(): void;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- getAnimatables(): IAnimatable[];
- getActiveTextures(): BaseTexture[];
- hasTexture(texture: BaseTexture): boolean;
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): FurMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): FurMaterial;
- static GenerateTexture(name: string, scene: Scene): DynamicTexture;
- static FurifyMesh(sourceMesh: Mesh, quality: number): Mesh[];
- }
- }
- declare module BABYLON {
- class TerrainMaterial extends PushMaterial {
- private _mixTexture;
- mixTexture: BaseTexture;
- private _diffuseTexture1;
- diffuseTexture1: Texture;
- private _diffuseTexture2;
- diffuseTexture2: Texture;
- private _diffuseTexture3;
- diffuseTexture3: Texture;
- private _bumpTexture1;
- bumpTexture1: Texture;
- private _bumpTexture2;
- bumpTexture2: Texture;
- private _bumpTexture3;
- bumpTexture3: Texture;
- diffuseColor: Color3;
- specularColor: Color3;
- specularPower: number;
- private _disableLighting;
- disableLighting: boolean;
- private _maxSimultaneousLights;
- maxSimultaneousLights: number;
- private _renderId;
- constructor(name: string, scene: Scene);
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- getAnimatables(): IAnimatable[];
- getActiveTextures(): BaseTexture[];
- hasTexture(texture: BaseTexture): boolean;
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): TerrainMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): TerrainMaterial;
- }
- }
- declare module BABYLON {
- class TriPlanarMaterial extends PushMaterial {
- mixTexture: BaseTexture;
- private _diffuseTextureX;
- diffuseTextureX: BaseTexture;
- private _diffuseTextureY;
- diffuseTextureY: BaseTexture;
- private _diffuseTextureZ;
- diffuseTextureZ: BaseTexture;
- private _normalTextureX;
- normalTextureX: BaseTexture;
- private _normalTextureY;
- normalTextureY: BaseTexture;
- private _normalTextureZ;
- normalTextureZ: BaseTexture;
- tileSize: number;
- diffuseColor: Color3;
- specularColor: Color3;
- specularPower: number;
- private _disableLighting;
- disableLighting: boolean;
- private _maxSimultaneousLights;
- maxSimultaneousLights: number;
- private _renderId;
- constructor(name: string, scene: Scene);
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- getAnimatables(): IAnimatable[];
- getActiveTextures(): BaseTexture[];
- hasTexture(texture: BaseTexture): boolean;
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): TriPlanarMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): TriPlanarMaterial;
- }
- }
- declare module BABYLON {
- class SkyMaterial extends PushMaterial {
- luminance: number;
- turbidity: number;
- rayleigh: number;
- mieCoefficient: number;
- mieDirectionalG: number;
- distance: number;
- inclination: number;
- azimuth: number;
- sunPosition: Vector3;
- useSunPosition: boolean;
- private _cameraPosition;
- private _renderId;
- constructor(name: string, scene: Scene);
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- getAnimatables(): IAnimatable[];
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): SkyMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): SkyMaterial;
- }
- }
- declare module BABYLON {
- /**
- * The grid materials allows you to wrap any shape with a grid.
- * Colors are customizable.
- */
- class GridMaterial extends BABYLON.PushMaterial {
- /**
- * Main color of the grid (e.g. between lines)
- */
- mainColor: Color3;
- /**
- * Color of the grid lines.
- */
- lineColor: Color3;
- /**
- * The scale of the grid compared to unit.
- */
- gridRatio: number;
- /**
- * Allows setting an offset for the grid lines.
- */
- gridOffset: Vector3;
- /**
- * The frequency of thicker lines.
- */
- majorUnitFrequency: number;
- /**
- * The visibility of minor units in the grid.
- */
- minorUnitVisibility: number;
- /**
- * The grid opacity outside of the lines.
- */
- opacity: number;
- /**
- * Determine RBG output is premultiplied by alpha value.
- */
- preMultiplyAlpha: boolean;
- private _gridControl;
- private _renderId;
- /**
- * constructor
- * @param name The name given to the material in order to identify it afterwards.
- * @param scene The scene the material is used in.
- */
- constructor(name: string, scene: Scene);
- /**
- * Returns wehter or not the grid requires alpha blending.
- */
- needAlphaBlending(): boolean;
- needAlphaBlendingForMesh(mesh: AbstractMesh): boolean;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- dispose(forceDisposeEffect?: boolean): void;
- clone(name: string): GridMaterial;
- serialize(): any;
- getClassName(): string;
- static Parse(source: any, scene: Scene, rootUrl: string): GridMaterial;
- }
- }
- declare module BABYLON {
- class CustomShaderStructure {
- FragmentStore: string;
- VertexStore: string;
- constructor();
- }
- class ShaderSpecialParts {
- constructor();
- Fragment_Begin: string;
- Fragment_Definitions: string;
- Fragment_MainBegin: string;
- Fragment_Custom_Diffuse: string;
- Fragment_Custom_Alpha: string;
- Fragment_Before_FragColor: string;
- Vertex_Begin: string;
- Vertex_Definitions: string;
- Vertex_MainBegin: string;
- Vertex_Before_PositionUpdated: string;
- Vertex_Before_NormalUpdated: string;
- }
- class CustomMaterial extends StandardMaterial {
- static ShaderIndexer: number;
- CustomParts: ShaderSpecialParts;
- _isCreatedShader: boolean;
- _createdShaderName: string;
- _customUniform: string[];
- _newUniforms: string[];
- _newUniformInstances: any[];
- _newSamplerInstances: Texture[];
- FragmentShader: string;
- VertexShader: string;
- AttachAfterBind(mesh: Mesh, effect: Effect): void;
- ReviewUniform(name: string, arr: string[]): string[];
- Builder(shaderName: string, uniforms: string[], uniformBuffers: string[], samplers: string[], defines: StandardMaterialDefines): string;
- constructor(name: string, scene: Scene);
- AddUniform(name: string, kind: string, param: any): CustomMaterial;
- Fragment_Begin(shaderPart: string): CustomMaterial;
- Fragment_Definitions(shaderPart: string): CustomMaterial;
- Fragment_MainBegin(shaderPart: string): CustomMaterial;
- Fragment_Custom_Diffuse(shaderPart: string): CustomMaterial;
- Fragment_Custom_Alpha(shaderPart: string): CustomMaterial;
- Fragment_Before_FragColor(shaderPart: string): CustomMaterial;
- Vertex_Begin(shaderPart: string): CustomMaterial;
- Vertex_Definitions(shaderPart: string): CustomMaterial;
- Vertex_MainBegin(shaderPart: string): CustomMaterial;
- Vertex_Before_PositionUpdated(shaderPart: string): CustomMaterial;
- Vertex_Before_NormalUpdated(shaderPart: string): CustomMaterial;
- }
- }
- declare module BABYLON {
- class CellMaterial extends PushMaterial {
- private _diffuseTexture;
- diffuseTexture: BaseTexture;
- diffuseColor: Color3;
- _computeHighLevel: boolean;
- computeHighLevel: boolean;
- private _disableLighting;
- disableLighting: boolean;
- private _maxSimultaneousLights;
- maxSimultaneousLights: number;
- private _renderId;
- constructor(name: string, scene: Scene);
- needAlphaBlending(): boolean;
- needAlphaTesting(): boolean;
- getAlphaTestTexture(): Nullable<BaseTexture>;
- isReadyForSubMesh(mesh: AbstractMesh, subMesh: SubMesh, useInstances?: boolean): boolean;
- bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void;
- getAnimatables(): IAnimatable[];
- getActiveTextures(): BaseTexture[];
- hasTexture(texture: BaseTexture): boolean;
- dispose(forceDisposeEffect?: boolean): void;
- getClassName(): string;
- clone(name: string): CellMaterial;
- serialize(): any;
- static Parse(source: any, scene: Scene, rootUrl: string): CellMaterial;
- }
- }
|