[][src]Struct tetra::graphics::texture::Texture

pub struct Texture { /* fields omitted */ }

A 2D texture, held in GPU memory.

The following file formats are supported:

  • PNG
  • JPEG
  • GIF
  • BMP
  • TIFF
  • TGA
  • WEBP
  • ICO
  • PNM

This type acts as a lightweight handle to the associated graphics hardware data, and so can be cloned with little overhead.

Methods

impl Texture[src]

pub fn new<P>(ctx: &mut Context, path: P) -> Result<Texture> where
    P: AsRef<Path>, 
[src]

Creates a new texture from the given file.

The format will be determined based on the file extension.

Errors

If the file could not be read, a TetraError::Io will be returned.

If the image data was invalid, a TetraError::Image will be returned.

pub fn from_file_data(ctx: &mut Context, data: &[u8]) -> Result<Texture>[src]

Creates a new texture from a slice of data, encoded in one of Tetra's supported file formats (except for TGA).

This is useful in combination with include_bytes, as it allows you to include your textures directly in the binary.

The format will be determined based on the 'magic bytes' at the beginning of the data. This should be reasonably reliable, but a from_data_with_format function might have to be added later. Note that TGA files do not have recognizable magic bytes, so this function will not recognize them.

Errors

If the image data was invalid, a TetraError::Image will be returned.

pub fn from_rgba(
    ctx: &mut Context,
    width: i32,
    height: i32,
    data: &[u8]
) -> Result<Texture>
[src]

Creates a new texture from a slice of RGBA pixel data.

This is useful if you wish to create a texture at runtime.

Note that this method requires you to provide enough data to fill the texture. If you provide too much data, it will be truncated.

Errors

If not enough data is provided to fill the texture, a TetraError::NotEnoughData will be returned. This is to prevent OpenGL from reading uninitialized memory.

pub fn from_data(ctx: &mut Context, data: &[u8]) -> Result<Texture>[src]

Deprecated since 0.2.13:

Renamed to from_file_data to disambiguate from other image data formats (e.g. RGBA).

pub fn width(&self) -> i32[src]

Returns the width of the texture.

pub fn height(&self) -> i32[src]

Returns the height of the texture.

Trait Implementations

impl Drawable for Texture[src]

impl Clone for Texture[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl PartialEq<Texture> for Texture[src]

impl Debug for Texture[src]

Auto Trait Implementations

impl !Send for Texture

impl !Sync for Texture

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> SetParameter for T

fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
    T: Parameter<Self>, 

Sets value as a parameter of self.

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>,