[][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 PartialEq<Texture> 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 Debug for Texture[src]

Auto Trait Implementations

impl !Send for Texture

impl !Sync for Texture

Blanket Implementations

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

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

type Owned = T

impl<T> From for T[src]

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

impl<T, U> TryInto 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> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Same for T

type Output = T

Should always be Self

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

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.