Struct tetra::graphics::CanvasBuilder
source · [−]pub struct CanvasBuilder { /* private fields */ }
Expand description
A builder for creating advanced canvas configurations.
By default, Tetra’s canvases are fairly simple - they just provide a Texture
that you
can render things to. However, they can also be configured with extra features via this
builder, such as multisampling and additional buffers.
Implementations
sourceimpl CanvasBuilder
impl CanvasBuilder
sourcepub fn new(width: i32, height: i32) -> CanvasBuilder
pub fn new(width: i32, height: i32) -> CanvasBuilder
Creates a new canvas builder.
You can also use Canvas::builder
as a shortcut for this, if you want
to avoid the extra import.
sourcepub fn texture_format(&mut self, format: TextureFormat) -> &mut CanvasBuilder
pub fn texture_format(&mut self, format: TextureFormat) -> &mut CanvasBuilder
Sets the format that should be used for the canvas’ underlying Texture
.
Defaults to TextureFormat::Rgba8
.
sourcepub fn samples(&mut self, samples: u8) -> &mut CanvasBuilder
pub fn samples(&mut self, samples: u8) -> &mut CanvasBuilder
Sets the level of multisample anti-aliasing to use.
The number of samples that can be used varies between graphics cards - 2
, 4
and 8
are reasonably
well supported. When set to 0
(the default), no multisampling will be used.
Resolving
In order to actually display a multisampled canvas, it first has to be downsampled (or ‘resolved’). This is
done automatically once you switch to a different canvas/the backbuffer. Until this step takes place,
your rendering will not be reflected in the canvas’ underlying texture
(and by
extension, in the output of draw
and get_data
).
sourcepub fn stencil_buffer(&mut self, enabled: bool) -> &mut CanvasBuilder
pub fn stencil_buffer(&mut self, enabled: bool) -> &mut CanvasBuilder
Sets whether the canvas should have a stencil buffer.
Setting this to true
allows you to use stencils while rendering to the canvas, at the cost
of some extra video RAM usage.
Trait Implementations
sourceimpl Clone for CanvasBuilder
impl Clone for CanvasBuilder
sourcefn clone(&self) -> CanvasBuilder
fn clone(&self) -> CanvasBuilder
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
Auto Trait Implementations
impl RefUnwindSafe for CanvasBuilder
impl Send for CanvasBuilder
impl Sync for CanvasBuilder
impl Unpin for CanvasBuilder
impl UnwindSafe for CanvasBuilder
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
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more