pub struct Texture2d(_);
Expand description

A two-dimensional texture containing floating-point data.

Implementations§

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)
};

Determines the internal format of this texture.

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

Builds a new texture by uploading data.

This function will automatically generate all mipmaps of the texture.

Builds a new texture by uploading data.

Builds a new texture with a specific format.

Creates an empty texture.

No mipmap level (except for the main level) will be allocated or generated.

The texture will contain undefined data.

Creates an empty texture with a specific format.

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

Creates an empty texture. Specifies whether is has mipmaps.

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

Builds a new texture reference from an existing, externally created OpenGL texture. If owned is true, this reference will take ownership of the texture and be responsible for cleaning it up. Otherwise, the texture must be cleaned up externally, but only after this reference’s lifetime has ended.

Returns the width of that image.

Returns the height of that image.

Returns the width and height of that image.

Starts drawing on the texture.

All the function calls to the framebuffer will draw on the texture instead of the screen.

Low-level information

The first time that this function is called, a FrameBuffer Object will be created and cached. The following calls to as_surface will load the existing FBO and re-use it. When the texture is destroyed, the FBO is destroyed too.

Returns the number of mipmap levels of the texture.

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

Reads the content of the texture to RAM. This method may only read U8U8U8U8 data, as it is the only format guaranteed to be supported across all OpenGL versions.

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

Reads the content of the texture into a buffer in video memory. This method may only read U8U8U8U8 data, as it is the only format guaranteed to be supported across all OpenGL versions.

This operation copies the texture’s data into a buffer in video memory (a pixel buffer). Contrary to the read function, this operation is done asynchronously and doesn’t need a synchronization.

Unsafely reads the content of the texture to RAM in the specified pixel format. It is possible that the current OpenGL context does not support the given format, in which case the returned data will be invalid.

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

Unsafely reads the content of the texture into a buffer in video memory. It is possible that the current OpenGL context does not support the given format, in which case the returned data will be invalid.

This operation copies the texture’s data into a buffer in video memory (a pixel buffer). Contrary to the read function, this operation is done asynchronously and doesn’t need a synchronization.

Uploads some data in the texture.

Note that this may cause a synchronization if you use the texture right before or right after this call. Prefer creating a whole new texture if you change a huge part of it.

Panic

Panics if the the dimensions of data don’t match the Rect.

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.

Access a single mipmap level of this texture.

Access the main mipmap level of this texture.

Methods from Deref<Target = TextureAny>§

Returns the width of the texture.

Returns the height of the texture.

Returns the depth of the texture.

Returns the kind of texture.

Returns the dimensions of the texture.

Returns the array size of the texture.

Returns the number of samples of the texture if it is a multisampling texture.

Returns a structure that represents the first layer of the texture. All textures have a first layer.

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.

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

Determines the internal format of this texture.

Determines the number of depth and stencil bits in the format of this texture.

Returns the number of mipmap levels of the texture.

Returns a structure that represents the main mipmap level of the texture.

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

Returns None if out of range.

Binds this texture and generates mipmaps.

Trait Implementations§

Builds a UniformValue.
Formats the value using the given formatter. Read more
The resulting type after dereferencing.
Dereferences the value.
The type of identifier for this object.
Returns the id of the object.
Builds the ColorAttachment.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.