/// import { Texture, TextureDataOption, TextureOptions, TextureSourceOption } from '../../resources/Texture'; import { DeviceGPU } from '../DeviceGPU'; /** * Describes a texture object. * * @public */ export declare class TextureGPU extends Texture { readonly device: DeviceGPU; readonly handle: GPUTexture; private get dimensionGPU(); /** * Constructs an instance of a Texture. * * @remarks * The options are passed down to {@link Texture.setup} */ constructor(device: DeviceGPU, options?: TextureOptions); create(): this; /** * Releases all resources and notifies the device that the texture is being destroyed. */ destroy(): this; /** * Binds the texture to the gl context. * * @returns the previously bound texture handle */ bind(): this; /** * Sets the texture source from data array or buffer * * @param data - The texture data to be set * @param width - The new texture width * @param height - The new texture height */ setData(data: TextureDataOption, width?: number, height?: number): this; setFaces(faces: TextureSourceOption[]): this; /** * Updates the texture from current image or video element. * * @remarks * This method is called automatically from inside the {@link ShaderUniform} * * When loading textures from url or html image/video elements * the texture data might not be available right away because the * resources may still be downloading. * * A call to this method instructs the texture to check the * download state of the resources and when available to update * the texture data. When data has arrived the {@link Texture.ready} * property will be set to `true` */ update(): boolean; } //# sourceMappingURL=TextureGPU.d.ts.map