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 as_color_target(&mut self, mip_level: Option<u32>) -> ColorTarget<'_>
pub fn as_color_target(&mut self, mip_level: Option<u32>) -> ColorTarget<'_>
Returns a ColorTarget which can be used to clear, write to and read from the given mip level of this texture.
Combine this together with a DepthTarget with RenderTarget::new to be able to write to both a depth and color target at the same time.
If None is specified as the mip level, the 0 level mip level is used and mip maps are generated after a write operation if a mip map filter is specified.
Otherwise, the given mip level is used and no mip maps are generated.
Note: DepthTest is disabled if not also writing to a depth texture.
sourcepub fn write<F: FnOnce() -> ThreeDResult<()>>(
&mut self,
clear_state: ClearState,
render: F
) -> ThreeDResult<()>
👎 Deprecated: use as_color_target followed by clear and write
pub fn write<F: FnOnce() -> ThreeDResult<()>>(
&mut self,
clear_state: ClearState,
render: F
) -> ThreeDResult<()>
use as_color_target followed by clear and write
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>(
&mut self,
viewport: Viewport
) -> ThreeDResult<Vec<T>>
👎 Deprecated: use as_color_target followed by read
pub fn read<T: TextureDataType>(
&mut self,
viewport: Viewport
) -> ThreeDResult<Vec<T>>
use as_color_target followed by read
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