Struct three_d::core::texture::Texture2DArray [−][src]
pub struct Texture2DArray<T: TextureDataType> { /* fields omitted */ }
Expand description
A array of 2D color textures that can be rendered into.
Note: DepthTest is disabled if not also writing to a depth texture array. Use a RenderTargetArray to write to both color and depth.
Implementations
pub fn new_empty(
context: &Context,
width: u32,
height: u32,
depth: u32,
min_filter: Interpolation,
mag_filter: Interpolation,
mip_map_filter: Option<Interpolation>,
wrap_s: Wrapping,
wrap_t: Wrapping,
format: Format
) -> ThreeDResult<Self>
pub fn new_empty(
context: &Context,
width: u32,
height: u32,
depth: u32,
min_filter: Interpolation,
mag_filter: Interpolation,
mip_map_filter: Option<Interpolation>,
wrap_s: Wrapping,
wrap_t: Wrapping,
format: Format
) -> ThreeDResult<Self>
Creates a new array of 2D textures.
pub fn new(
context: &Context,
width: u32,
height: u32,
depth: u32,
min_filter: Interpolation,
mag_filter: Interpolation,
mip_map_filter: Option<Interpolation>,
wrap_s: Wrapping,
wrap_t: Wrapping,
format: Format
) -> ThreeDResult<Self>
👎 Deprecated: Use new_empty instead
pub fn new(
context: &Context,
width: u32,
height: u32,
depth: u32,
min_filter: Interpolation,
mag_filter: Interpolation,
mip_map_filter: Option<Interpolation>,
wrap_s: Wrapping,
wrap_t: Wrapping,
format: Format
) -> ThreeDResult<Self>
Use new_empty instead
Creates a new array of 2D textures.
pub fn write<F: FnOnce() -> ThreeDResult<()>>(
&self,
color_layers: &[u32],
clear_state: ClearState,
render: F
) -> ThreeDResult<()>
pub fn write<F: FnOnce() -> ThreeDResult<()>>(
&self,
color_layers: &[u32],
clear_state: ClearState,
render: F
) -> ThreeDResult<()>
Renders whatever rendered in the render
closure into the textures defined by the input parameters color_layers
.
Output at location i defined in the fragment shader is written to the color texture layer at the ith index in color_layers
.
Before writing, the textures are cleared based on the given clear state.
Note: DepthTest is disabled if not also writing to a depth texture array. Use a RenderTargetArray to write to both color and depth.
pub fn copy_to(
&self,
color_layer: u32,
destination: CopyDestination<'_, '_, '_, '_, T>,
viewport: Viewport,
write_mask: WriteMask
) -> ThreeDResult<()>
👎 Deprecated: Use RenderTarget::copy_from_array or Screen::copy_from_array instead
pub fn copy_to(
&self,
color_layer: u32,
destination: CopyDestination<'_, '_, '_, '_, T>,
viewport: Viewport,
write_mask: WriteMask
) -> ThreeDResult<()>
Use RenderTarget::copy_from_array or Screen::copy_from_array instead
Copies the content of the color texture at the given layer 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.
Trait Implementations
Auto Trait Implementations
impl<T> !RefUnwindSafe for Texture2DArray<T>
impl<T> !Send for Texture2DArray<T>
impl<T> !Sync for Texture2DArray<T>
impl<T> Unpin for Texture2DArray<T> where
T: Unpin,
impl<T> !UnwindSafe for Texture2DArray<T>
Blanket Implementations
Mutably borrows from an owned value. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more