Struct glium::texture::CompressedTexture3d [] [src]

pub struct CompressedTexture3d(_);

A compressed three-dimensional texture containing floating-point data.

Methods

impl CompressedTexture3d

fn sampled(&self) -> Sampler<CompressedTexture3d>

Builds a Sampler marker object that allows you to indicate how the texture should be sampled from inside a shader.

Example

let uniforms = uniform! {
    color_texture: texture.sampled().magnify_filter(glium::uniforms::MagnifySamplerFilter::Nearest)
};

impl CompressedTexture3d

fn get_internal_format(&self) -> Result<InternalFormat, GetFormatError>

Determines the internal format of this texture.

The backend may not support querying the actual format, in which case an error is returned.

fn new<'a, F, T>(facade: &F, data: T) -> Result<CompressedTexture3d, TextureCreationError> where T: Texture3dDataSource<'a>, F: Facade

Builds a new texture by uploading data.

No mipmap level (except for the main level) will be allocator nor generated.

fn with_mipmaps<'a, F, T>(facade: &F, data: T, mipmaps: CompressedMipmapsOption) -> Result<CompressedTexture3d, TextureCreationError> where T: Texture3dDataSource<'a>, F: Facade

Builds a new texture by uploading data.

fn with_compressed_data<F>(facade: &F, data: &[u8], width: u32, height: u32, depth: u32, format: CompressedFormat, mipmaps: CompressedMipmapsOption) -> Result<CompressedTexture3d, TextureCreationError> where F: Facade

Builds a new texture with a specific format. The input data must also be of the specified compressed format.

fn with_format<'a, F, T>(facade: &F, data: T, format: CompressedFormat, mipmaps: CompressedMipmapsOption) -> Result<CompressedTexture3d, TextureCreationError> where T: Texture3dDataSource<'a>, F: Facade

Builds a new texture with a specific format.

fn empty_with_format<F>(facade: &F, format: CompressedFormat, mipmaps: CompressedMipmapsOption, width: u32, height: u32, depth: u32) -> Result<CompressedTexture3d, TextureCreationError> where F: Facade

Creates an empty texture with a specific format.

The texture (and its mipmaps) will contain undefined data.

fn get_mipmap_levels(&self) -> u32

Returns the number of mipmap levels of the texture.

The minimum value is 1, since there is always a main texture.

fn read_compressed_data(&self) -> Option<(CompressedFormat, Vec<u8>)>

Reads the content of the texture to RAM without decompressing it before.

You should avoid doing this at all cost during performance-critical operations (for example, while you're drawing).

Returns the compressed format of the texture and the compressed data, gives None when the internal compression format is generic or unknown.

fn resident(self) -> Result<ResidentTexture, BindlessTexturesNotSupportedError>

Turns the texture into a ResidentTexture.

This allows you to use the texture in a much more efficient way by storing a "reference to it" in a buffer (actually not a reference but a raw pointer).

See the documentation of ResidentTexture for more infos.

fn mipmap(&self, level: u32) -> Option<CompressedTexture3dMipmap>

Access a single mipmap level of this texture.

fn main_level(&self) -> CompressedTexture3dMipmap

Access the main mipmap level of this texture.

Methods from Deref<Target=TextureAny>

fn get_width(&self) -> u32

Returns the width of the texture.

fn get_height(&self) -> Option<u32>

Returns the height of the texture.

fn get_depth(&self) -> Option<u32>

Returns the depth of the texture.

fn get_array_size(&self) -> Option<u32>

Returns the array size of the texture.

fn get_mipmap_levels(&self) -> u32

Returns the number of mipmap levels of the texture.

fn get_texture_type(&self) -> Dimensions

Returns the type of the texture (1D, 2D, 3D, etc.).

fn get_internal_format(&self) -> Result<InternalFormat, GetFormatError>

Determines the internal format of this texture.

fn mipmap(&self, layer: u32, level: u32) -> Option<TextureAnyMipmap>

Returns a structure that represents a specific mipmap of the texture.

Returns None if out of range.

Trait Implementations

impl Texture for CompressedTexture3d

fn get_width(&self) -> u32

fn get_height(&self) -> Option<u32>

fn get_depth(&self) -> Option<u32>

fn get_array_size(&self) -> Option<u32>

impl GlObject for CompressedTexture3d

type Id = GLuint

fn get_id(&self) -> GLuint

impl Debug for CompressedTexture3d

fn fmt(&self, f: &mut Formatter) -> Result<(), Error>

impl Deref for CompressedTexture3d

type Target = TextureAny

fn deref<'a>(&'a self) -> &'a TextureAny

impl<'a> AsUniformValue for &'a CompressedTexture3d

fn as_uniform_value(&self) -> UniformValue