pub struct Texture2D { /* private fields */ }Expand description
A 2D texture, basically an image that is transferred to the GPU.
Implementations
sourceimpl Texture2D
impl Texture2D
sourcepub fn new(context: &Context, cpu_texture: &CpuTexture) -> ThreeDResult<Self>
pub fn new(context: &Context, cpu_texture: &CpuTexture) -> ThreeDResult<Self>
Construcs a new texture with the given data.
sourcepub fn new_empty<T: TextureDataType>(
context: &Context,
width: u32,
height: u32,
min_filter: Interpolation,
mag_filter: Interpolation,
mip_map_filter: Option<Interpolation>,
wrap_s: Wrapping,
wrap_t: Wrapping
) -> ThreeDResult<Self>
pub fn new_empty<T: TextureDataType>(
context: &Context,
width: u32,
height: u32,
min_filter: Interpolation,
mag_filter: Interpolation,
mip_map_filter: Option<Interpolation>,
wrap_s: Wrapping,
wrap_t: Wrapping
) -> ThreeDResult<Self>
Constructs a new empty 2D texture with the given parameters. The format is determined by the generic TextureDataType parameter (for example, if [u8; 4] is specified, the format is RGBA and the data type is byte).
sourcepub fn fill<T: TextureDataType>(&mut self, data: &[T]) -> ThreeDResult<()>
pub fn fill<T: TextureDataType>(&mut self, data: &[T]) -> ThreeDResult<()>
Fills this texture with the given data.
Errors
Returns an error if the length of the data does not correspond to the width, height and format specified at construction. It is therefore necessary to create a new texture if the texture size or format has changed.
sourcepub fn write<F: FnOnce() -> ThreeDResult<()>>(
&mut self,
clear_state: ClearState,
render: F
) -> ThreeDResult<()>
pub fn write<F: FnOnce() -> ThreeDResult<()>>(
&mut self,
clear_state: ClearState,
render: F
) -> ThreeDResult<()>
Renders whatever rendered in the render closure into the texture.
Before writing, the texture is cleared based on the given clear state.
Note: DepthTest is disabled if not also writing to a depth texture. Use a RenderTarget to write to both color and depth.
sourcepub fn read<T: TextureDataType>(
&self,
viewport: Viewport
) -> ThreeDResult<Vec<T>>
pub fn read<T: TextureDataType>(
&self,
viewport: Viewport
) -> ThreeDResult<Vec<T>>
Returns the values of the pixels in this texture inside the given viewport. The number of channels per pixel and the data format for each channel is specified by the generic parameter.
Note: On web, the data format needs to match the data format of this texture.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for Texture2D
impl !Send for Texture2D
impl !Sync for Texture2D
impl Unpin for Texture2D
impl !UnwindSafe for Texture2D
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a
WithDispatch wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber to this type, returning a
WithDispatch wrapper. Read more