Struct three_d::core::ColorTargetTexture2D[][src]

pub struct ColorTargetTexture2D<T: TextureValueType> { /* fields omitted */ }
Expand description

A 2D color texture that can be rendered into and read from.

Note: Depth test is disabled if not also writing to a depth texture. Use a RenderTarget to write to both color and depth.

Implementations

impl<T: TextureValueType> ColorTargetTexture2D<T>[src]

pub fn new(
    context: &Context,
    width: usize,
    height: usize,
    min_filter: Interpolation,
    mag_filter: Interpolation,
    mip_map_filter: Option<Interpolation>,
    wrap_s: Wrapping,
    wrap_t: Wrapping,
    format: Format
) -> Result<Self, Error>
[src]

Constructs a new 2D color target texture.

pub fn write<F: FnOnce() -> Result<(), Error>>(
    &self,
    clear_state: ClearState,
    render: F
) -> Result<(), Error>
[src]

Renders whatever rendered in the render closure into the texture. Before writing, the texture is cleared based on the given clear state.

Note: Depth test is disabled if not also writing to a depth texture. Use a RenderTarget to write to both color and depth.

pub fn copy_to(
    &self,
    destination: CopyDestination<'_, '_, '_, '_, T>,
    viewport: Viewport,
    write_mask: WriteMask
) -> Result<(), Error>
[src]

Copies the content of the color texture to the specified destination at the given viewport. Will only copy the channels specified by the write mask.

Errors

Will return an error if the destination is a depth texture.

pub fn read(&self, viewport: Viewport) -> Result<Vec<T>, Error>[src]

Returns the color values of the pixels in this color texture inside the given viewport.

Note: Only works for the RGBA format.

Errors

Will return an error if the color texture is not RGBA format.

Trait Implementations

impl<T: TextureValueType> Drop for ColorTargetTexture2D<T>[src]

fn drop(&mut self)[src]

Executes the destructor for this type. Read more

impl<T: TextureValueType> Texture for ColorTargetTexture2D<T>[src]

fn bind(&self, location: u32)[src]

Binds this texture to the current shader program.

fn width(&self) -> usize[src]

The width of this texture.

fn height(&self) -> usize[src]

The height of this texture.

Auto Trait Implementations

impl<T> !RefUnwindSafe for ColorTargetTexture2D<T>

impl<T> !Send for ColorTargetTexture2D<T>

impl<T> !Sync for ColorTargetTexture2D<T>

impl<T> Unpin for ColorTargetTexture2D<T> where
    T: Unpin

impl<T> UnwindSafe for ColorTargetTexture2D<T> where
    T: UnwindSafe

Blanket Implementations

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

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

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

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

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.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

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.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.