Struct glium::texture::bindless::ResidentTexture
source · pub struct ResidentTexture { /* private fields */ }
Expand description
A texture that is resident in video memory. This allows you to use bindless textures in your shaders.
Implementations§
source§impl ResidentTexture
impl ResidentTexture
sourcepub fn new(
texture: TextureAny
) -> Result<ResidentTexture, BindlessTexturesNotSupportedError>
pub fn new( texture: TextureAny ) -> Result<ResidentTexture, BindlessTexturesNotSupportedError>
Takes ownership of the given texture and makes it resident.
sourcepub fn into_inner(self) -> TextureAny
pub fn into_inner(self) -> TextureAny
Unwraps the texture and restores it.
Methods from Deref<Target = TextureAny>§
sourcepub fn get_height(&self) -> Option<u32>
pub fn get_height(&self) -> Option<u32>
Returns the height of the texture.
sourcepub fn kind(&self) -> TextureKind
pub fn kind(&self) -> TextureKind
Returns the kind of texture.
sourcepub fn dimensions(&self) -> Dimensions
pub fn dimensions(&self) -> Dimensions
Returns the dimensions of the texture.
sourcepub fn get_array_size(&self) -> Option<u32>
pub fn get_array_size(&self) -> Option<u32>
Returns the array size of the texture.
sourcepub fn get_samples(&self) -> Option<u32>
pub fn get_samples(&self) -> Option<u32>
Returns the number of samples of the texture if it is a multisampling texture.
sourcepub fn first_layer(&self) -> TextureAnyLayer<'_>
pub fn first_layer(&self) -> TextureAnyLayer<'_>
Returns a structure that represents the first layer of the texture. All textures have a first layer.
sourcepub fn layer(&self, layer: u32) -> Option<TextureAnyLayer<'_>>
pub fn layer(&self, layer: u32) -> Option<TextureAnyLayer<'_>>
Returns a structure that represents a specific layer of the texture.
Non-array textures have only one layer. The number of layers can be queried with
get_array_size
.
Returns None
if out of range.
sourcepub fn get_texture_type(&self) -> Dimensions
pub fn get_texture_type(&self) -> Dimensions
Returns the type of the texture (1D, 2D, 3D, etc.).
sourcepub fn get_internal_format(&self) -> Result<InternalFormat, GetFormatError>
pub fn get_internal_format(&self) -> Result<InternalFormat, GetFormatError>
Determines the internal format of this texture.
sourcepub fn get_depth_stencil_bits(&self) -> (u16, u16)
pub fn get_depth_stencil_bits(&self) -> (u16, u16)
Determines the number of depth and stencil bits in the format of this texture.
sourcepub fn get_mipmap_levels(&self) -> u32
pub fn get_mipmap_levels(&self) -> u32
Returns the number of mipmap levels of the texture.
sourcepub fn main_level(&self) -> TextureAnyMipmap<'_>
pub fn main_level(&self) -> TextureAnyMipmap<'_>
Returns a structure that represents the main mipmap level of the texture.
sourcepub fn mipmap(&self, level: u32) -> Option<TextureAnyMipmap<'_>>
pub fn mipmap(&self, level: u32) -> Option<TextureAnyMipmap<'_>>
Returns a structure that represents a specific mipmap of the texture.
Returns None
if out of range.
sourcepub unsafe fn generate_mipmaps(&self)
pub unsafe fn generate_mipmaps(&self)
Binds this texture and generates mipmaps.
Trait Implementations§
source§impl DerefMut for ResidentTexture
impl DerefMut for ResidentTexture
source§fn deref_mut(&mut self) -> &mut TextureAny
fn deref_mut(&mut self) -> &mut TextureAny
source§impl Drop for ResidentTexture
impl Drop for ResidentTexture
source§impl Deref for ResidentTexture
impl Deref for ResidentTexture
§type Target = TextureAny
type Target = TextureAny
source§fn deref(&self) -> &TextureAny
fn deref(&self) -> &TextureAny
Auto Trait Implementations§
impl !RefUnwindSafe for ResidentTexture
impl !Send for ResidentTexture
impl !Sync for ResidentTexture
impl Unpin for ResidentTexture
impl !UnwindSafe for ResidentTexture
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.