12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- import { MaterialDefines } from "./materialDefines";
- import { MaterialPluginBase } from "./materialPluginBase";
- import type { Scene } from "../scene.js";
- import type { Engine } from "../Engines/engine.js";
- import type { SubMesh } from "../Meshes/subMesh.js";
- import type { AbstractMesh } from "../Meshes/abstractMesh.js";
- import type { UniformBuffer } from "./uniformBuffer";
- import type { PBRBaseMaterial } from "./PBR/pbrBaseMaterial";
- import type { StandardMaterial } from "./standardMaterial";
- /**
- * @internal
- */
- export declare class DecalMapDefines extends MaterialDefines {
- DECAL: boolean;
- DECALDIRECTUV: number;
- DECAL_SMOOTHALPHA: boolean;
- GAMMADECAL: boolean;
- }
- /**
- * Plugin that implements the decal map component of a material
- * @since 5.49.1
- */
- export declare class DecalMapConfiguration extends MaterialPluginBase {
- private _isEnabled;
- /**
- * Enables or disables the decal map on this material
- */
- isEnabled: boolean;
- private _smoothAlpha;
- /**
- * Enables or disables the smooth alpha mode on this material. Default: false.
- * When enabled, the alpha value used to blend the decal map will be the squared value and will produce a smoother result.
- */
- smoothAlpha: boolean;
- private _internalMarkAllSubMeshesAsTexturesDirty;
- /** @internal */
- _markAllSubMeshesAsTexturesDirty(): void;
- /**
- * Creates a new DecalMapConfiguration
- * @param material The material to attach the decal map plugin to
- * @param addToPluginList If the plugin should be added to the material plugin list
- */
- constructor(material: PBRBaseMaterial | StandardMaterial, addToPluginList?: boolean);
- isReadyForSubMesh(defines: DecalMapDefines, scene: Scene, engine: Engine, subMesh: SubMesh): boolean;
- prepareDefines(defines: DecalMapDefines, scene: Scene, mesh: AbstractMesh): void;
- hardBindForSubMesh(uniformBuffer: UniformBuffer, scene: Scene, _engine: Engine, subMesh: SubMesh): void;
- getClassName(): string;
- getSamplers(samplers: string[]): void;
- getUniforms(): {
- ubo?: Array<{
- name: string;
- size: number;
- type: string;
- }>;
- vertex?: string;
- fragment?: string;
- };
- }
|