Struct nannou::wgpu::TextureBuilder

source ·
pub struct TextureBuilder { /* private fields */ }
Expand description

A type aimed at simplifying the construction of a Texture.

The builder assumes a set of defaults describing a 128x128, non-multisampled, single-layer, non-linear sRGBA-8 texture. A suite of builder methods may be used to specify the exact properties desired.

Implementations§

source§

impl Builder

source

pub const REQUIRED_IMAGE_TEXTURE_USAGE: TextureUsages = wgpu::TextureUsages::COPY_DST

The minimum required texture usage when loading from an image.

source

pub fn from_image_view<T>(image_view: &T) -> Builder
where T: GenericImageView, <T as GenericImageView>::Pixel: Pixel,

Produce a texture descriptor from an image.

Specifically, this supports any image type implementing image::GenericImageView whose Pixel type implements Pixel.

By default, the produced builder will have the wgpu::TextureUsages returned by wgpu::TextureBuilder::default_image_texture_usage(). This is a general-purpose usage that should allow for copying to and from the texture, sampling the texture and rendering to the texture. Specifying only the texture usage required may result in better performance. It may be necessary to manually specify the the usage if STORAGE is required.

source

pub fn default_image_texture_usage() -> TextureUsages

The default texture usage for the case where a user has loaded a texture from an image.

source§

impl Builder

source

pub const DEFAULT_SIDE: u32 = 128u32

source

pub const DEFAULT_DEPTH: u32 = 1u32

source

pub const DEFAULT_SIZE: Extent3d = _

source

pub const DEFAULT_ARRAY_LAYER_COUNT: u32 = 1u32

source

pub const DEFAULT_MIP_LEVEL_COUNT: u32 = 1u32

source

pub const DEFAULT_SAMPLE_COUNT: u32 = 1u32

source

pub const DEFAULT_DIMENSION: TextureDimension = wgpu::TextureDimension::D2

source

pub const DEFAULT_FORMAT: TextureFormat = wgpu::TextureFormat::Rgba8Unorm

source

pub const DEFAULT_USAGE: TextureUsages = _

source

pub const DEFAULT_DESCRIPTOR: TextureDescriptor<Option<&'static str>, &'static [TextureFormat]> = _

source

pub fn new() -> Builder

Creates a new Default builder

source

pub fn size(self, _: [u32; 2]) -> Builder

Specify the width and height of the texture.

Note: On calls to size, depth and extent the Builder will attempt to infer the wgpu::TextureDimension of its inner wgpu::TextureDescriptor by examining its size field. Use TextureBuilder::dimension() to override this behavior.

source

pub fn depth(self, depth: u32) -> Builder

Specify the depth of the texture.

Note: On calls to size, depth and extent the Builder will attempt to infer the wgpu::TextureDimension of its inner wgpu::TextureDescriptor by examining its size field. Use TextureBuilder::dimension() to override this behavior.

source

pub fn extent(self, extent: Extent3d) -> Builder

Specify the width, height and depth of the texture.

Note: On calls to size, depth and extent the Builder will attempt to infer the wgpu::TextureDimension of its inner wgpu::TextureDescriptor by examining its size field. Use TextureBuilder::dimension() to override this behavior.

source

pub fn dimension(self, dimension: TextureDimension) -> Builder

Specify the dimension of the texture, overriding inferred dimension.

Mainly useful for creating 2d texture arrays – override dimension with wgpu::TextureDimension::D2 on a texture with extent.depth > 1 in order to create a texture array (/ cubemap / cubemap array) instead of a 3d texture.

source

pub fn mip_level_count(self, count: u32) -> Builder

Specify the number of mip levels of the texture.

source

pub fn sample_count(self, count: u32) -> Builder

Specify the number of samples per pixel in the case that the texture is multisampled.

source

pub fn format(self, format: TextureFormat) -> Builder

Specify the texture format.

source

pub fn usage(self, usage: TextureUsages) -> Builder

Describes to the implementation how the texture is to be used.

It is important that the set of usage bits reflects the

source

pub fn build(self, device: &Device) -> Texture

Build the texture resulting from the specified parameters with the given device.

source

pub fn into_descriptor( self ) -> TextureDescriptor<Option<&'static str>, &'static [TextureFormat]>

Consumes the builder and returns the resulting wgpu::TextureDescriptor.

Trait Implementations§

source§

impl Debug for Builder

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl Default for Builder

source§

fn default() -> Builder

Returns the “default value” for a type. Read more
source§

impl From<TextureDescriptor<Option<&'static str>, &'static [TextureFormat]>> for Builder

source§

fn from( descriptor: TextureDescriptor<Option<&'static str>, &'static [TextureFormat]> ) -> Builder

Converts to this type from the input type.
source§

impl Into<TextureDescriptor<Option<&'static str>, &'static [TextureFormat]>> for Builder

source§

fn into( self ) -> TextureDescriptor<Option<&'static str>, &'static [TextureFormat]>

Converts this type into the (usually inferred) input type.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
where T: Component + Float, Swp: WhitePoint, Dwp: WhitePoint, D: AdaptFrom<S, Swp, Dwp, T>,

source§

fn adapt_into_using<M>(self, method: M) -> D
where M: TransformMatrix<Swp, Dwp, T>,

Convert the source color to the destination color using the specified method
source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default
source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T, U> ConvertInto<U> for T
where U: ConvertFrom<T>,

source§

fn convert_into(self) -> U

Convert into T with values clamped to the color defined bounds Read more
source§

fn convert_unclamped_into(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
source§

fn try_convert_into(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

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

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

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

Performs the conversion.
§

impl<T> Upcast<T> for T

§

fn upcast(&self) -> Option<&T>

§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WasmNotSend for T
where T: Send,

§

impl<T> WasmNotSync for T
where T: Sync,