@babylonjs/core
Version:
Getting started? Play directly with the Babylon.js API using our [playground](https://playground.babylonjs.com/). It also contains a lot of samples to learn how to use it.
62 lines (61 loc) • 2.4 kB
TypeScript
import { MaterialDefines } from "../../Materials/materialDefines.js";
import { MaterialPluginBase } from "../../Materials/materialPluginBase.js";
import { type InternalTexture } from "../../Materials/Textures/internalTexture.js";
import { type Material } from "../../Materials/material.js";
import { type StandardMaterial } from "../../Materials/standardMaterial.js";
import { PBRBaseMaterial } from "../../Materials/PBR/pbrBaseMaterial.js";
import { type UniformBuffer } from "../../Materials/uniformBuffer.js";
import { ShaderLanguage } from "../../Materials/shaderLanguage.js";
import { type OpenPBRMaterial } from "../../Materials/PBR/openpbrMaterial.js";
/**
* @internal
*/
declare class MaterialIBLShadowsRenderDefines extends MaterialDefines {
RENDER_WITH_IBL_SHADOWS: boolean;
COLORED_IBL_SHADOWS: boolean;
}
/**
* Plugin used to render the contribution from IBL shadows.
*/
export declare class IBLShadowsPluginMaterial extends MaterialPluginBase {
/**
* Defines the name of the plugin.
*/
static readonly Name = "IBLShadowsPluginMaterial";
/**
* The texture containing the contribution from IBL shadows.
*/
private _iblShadowsTexture;
get iblShadowsTexture(): InternalTexture;
set iblShadowsTexture(value: InternalTexture);
/**
* The opacity of the shadows.
*/
shadowOpacity: number;
private _isEnabled;
private _isColored;
get isColored(): boolean;
set isColored(value: boolean);
/**
* Defines if the plugin is enabled in the material.
*/
isEnabled: boolean;
protected _markAllSubMeshesAsTexturesDirty(): void;
private _internalMarkAllSubMeshesAsTexturesDirty;
/**
* Gets a boolean indicating that the plugin is compatible with a give shader language.
* @returns true if the plugin is compatible with the shader language
*/
isCompatible(): boolean;
constructor(material: Material | StandardMaterial | PBRBaseMaterial | OpenPBRMaterial);
private _isOpenPBRMaterial;
prepareDefines(defines: MaterialIBLShadowsRenderDefines): void;
getClassName(): string;
getUniforms(_shaderLanguage: ShaderLanguage): any;
getSamplers(samplers: string[]): void;
bindForSubMesh(uniformBuffer: UniformBuffer): void;
getCustomCode(shaderType: string, shaderLanguage: ShaderLanguage): {
[name: string]: string;
} | null;
}
export {};