import type { Nullable } from "../../types"; import type { Scene } from "../../scene"; import type { SphericalPolynomial } from "../../Maths/sphericalPolynomial"; import { CubeTexture } from "./cubeTexture"; import "../../Engines/Extensions/engine.rawTexture"; /** * Raw cube texture where the raw buffers are passed in */ export declare class RawCubeTexture extends CubeTexture { /** * Creates a cube texture where the raw buffers are passed in. * @param scene defines the scene the texture is attached to * @param data defines the array of data to use to create each face * @param size defines the size of the textures * @param format defines the format of the data * @param type defines the type of the data (like Engine.TEXTURETYPE_UNSIGNED_INT) * @param generateMipMaps defines if the engine should generate the mip levels * @param invertY defines if data must be stored with Y axis inverted * @param samplingMode defines the required sampling mode (like Texture.NEAREST_SAMPLINGMODE) * @param compression defines the compression used (null by default) */ constructor(scene: Scene, data: Nullable, size: number, format?: number, type?: number, generateMipMaps?: boolean, invertY?: boolean, samplingMode?: number, compression?: Nullable); /** * Updates the raw cube texture. * @param data defines the data to store * @param format defines the data format * @param type defines the type fo the data (Engine.TEXTURETYPE_UNSIGNED_INT by default) * @param invertY defines if data must be stored with Y axis inverted * @param compression defines the compression used (null by default) */ update(data: ArrayBufferView[], format: number, type: number, invertY: boolean, compression?: Nullable): void; /** * Updates a raw cube texture with RGBD encoded data. * @param data defines the array of data [mipmap][face] to use to create each face * @param sphericalPolynomial defines the spherical polynomial for irradiance * @param lodScale defines the scale applied to environment texture. This manages the range of LOD level used for IBL according to the roughness * @param lodOffset defines the offset applied to environment texture. This manages first LOD level used for IBL according to the roughness * @returns a promise that resolves when the operation is complete */ updateRGBDAsync(data: ArrayBufferView[][], sphericalPolynomial?: Nullable, lodScale?: number, lodOffset?: number): Promise; /** * Clones the raw cube texture. * @returns a new cube texture */ clone(): CubeTexture; }