Struct Render

Source
pub struct Render {
    pub normal_sprite_pipeline: ShaderInfo,
    pub quad_shader_info: ShaderInfo,
    pub mask_shader_info: ShaderInfo,
    pub light_shader_info: ShaderInfo,
    /* private fields */
}

Fields§

§normal_sprite_pipeline: ShaderInfo§quad_shader_info: ShaderInfo§mask_shader_info: ShaderInfo§light_shader_info: ShaderInfo

Implementations§

Source§

impl Render

Source

pub fn new( device: Arc<Device>, queue: Arc<Queue>, surface_texture_format: TextureFormat, physical_size: UVec2, virtual_surface_size: UVec2, now: Millis, ) -> Self

Source

pub fn create_virtual_texture( device: &Device, surface_texture_format: TextureFormat, virtual_surface_size: UVec2, ) -> (Texture, TextureView, BindGroup)

Source

pub const fn set_now(&mut self, now: Millis)

Source

pub const fn virtual_surface_size_with_scaling(&self) -> UVec2

Source

pub const fn physical_surface_size(&self) -> UVec2

Source

pub const fn viewport(&self) -> URect

Source

pub fn push_mask( &mut self, position: Vec3, size: UVec2, color: Color, alpha_masked: &MaterialRef, )

Source

pub fn push_mask_create_material( &mut self, position: Vec3, primary_texture: TextureRef, alpha_texture: TextureRef, texture_offset: UVec2, color: Color, )

Source

pub fn push_nine_slice( &mut self, position: Vec3, size: UVec2, color: Color, nine_slice_and_material: &NineSliceAndMaterial, )

Source

pub fn push_nine_slice_stretch( &mut self, position: Vec3, size: UVec2, color: Color, nine_slice_and_material: &NineSliceAndMaterial, )

Source

pub fn viewport_from_integer_scale( physical_size: UVec2, virtual_size: UVec2, ) -> URect

Source

pub fn viewport_from_float_scale( physical_size: UVec2, virtual_size: UVec2, ) -> URect

Source

pub const fn resize(&mut self, physical_size: UVec2)

Source

pub fn resize_virtual(&mut self, virtual_surface_size: UVec2)

Source

pub fn sprite_atlas( &mut self, position: Vec3, atlas_rect: URect, material_ref: &MaterialRef, )

Source

pub fn sprite_atlas_frame( &mut self, position: Vec3, frame: u16, atlas: &impl FrameLookup, )

Source

pub fn sprite_atlas_frame_ex( &mut self, position: Vec3, frame: u16, atlas: &impl FrameLookup, params: SpriteParams, )

Source

pub fn draw_sprite(&mut self, position: Vec3, material: &MaterialRef)

Source

pub fn draw_sprite_ex( &mut self, position: Vec3, material: &MaterialRef, params: SpriteParams, )

Source

pub fn nine_slice( &mut self, position: Vec3, size: UVec2, color: Color, nine_slice_and_material: &NineSliceAndMaterial, )

Source

pub fn nine_slice_stretch( &mut self, position: Vec3, size: UVec2, color: Color, nine_slice_and_material: &NineSliceAndMaterial, )

Source

pub fn draw_quad(&mut self, position: Vec3, size: UVec2, color: Color)

Source

pub fn draw_quad_ex( &mut self, position: Vec3, size: UVec2, color: Color, params: QuadParams, )

Source

pub fn draw_nine_slice( &mut self, position: Vec3, size: UVec2, slices: Slices, material_ref: &MaterialRef, color: Color, )

Source

pub const fn clear_color(&self) -> Color

Source

pub fn quad_helper_uniform( position: Vec3, quad_size: UVec2, render_atlas: URect, color: Color, current_texture_size: UVec2, ) -> SpriteInstanceUniform

Source

pub fn write_vertex_indices_and_uv_to_buffer( &mut self, textures: &Assets<Texture>, fonts: &Assets<Font>, )

§Panics
Source

pub fn prepare_nine_slice( nine_slice: &NineSlice, position_offset: Vec3, quad_matrix_and_uv: &mut Vec<SpriteInstanceUniform>, current_texture_size: UVec2, )

Source

pub fn prepare_nine_slice_single_center_quad( nine_slice: &NineSlice, position_offset: Vec3, quad_matrix_and_uv: &mut Vec<SpriteInstanceUniform>, current_texture_size: UVec2, )

Source

pub fn render( &mut self, command_encoder: &mut CommandEncoder, display_surface_texture_view: &TextureView, textures: &Assets<Texture>, fonts: &Assets<Font>, now: Millis, )

§Panics
Source

pub fn set_viewport_and_view_projection_matrix(&mut self)

Source

pub fn render_batches_to_virtual_texture( &mut self, command_encoder: &mut CommandEncoder, textures: &Assets<Texture>, )

Source

pub fn render_virtual_texture_to_display( &mut self, command_encoder: &mut CommandEncoder, display_surface_texture_view: &TextureView, )

Source

pub fn texture_resource_from_texture( &self, texture: &Texture, label: &str, ) -> Texture

Trait Implementations§

Source§

impl Debug for Render

Source§

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

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

impl Gfx for Render

Source§

fn sprite_atlas_frame( &mut self, position: Vec3, frame: u16, atlas: &impl FrameLookup, )

Source§

fn sprite_atlas( &mut self, position: Vec3, atlas_rect: URect, material_ref: &MaterialRef, )

Source§

fn draw_sprite(&mut self, position: Vec3, material_ref: &MaterialRef)

Source§

fn draw_sprite_ex( &mut self, position: Vec3, material_ref: &MaterialRef, params: &SpriteParams, )

Source§

fn quad(&mut self, position: Vec3, size: UVec2, color: Color)

Source§

fn quad_ex( &mut self, position: Vec3, size: UVec2, color: Color, params: QuadParams, )

Source§

fn draw_with_mask( &mut self, position: Vec3, size: UVec2, color: Color, alpha_masked: &MaterialRef, )

Source§

fn nine_slice( &mut self, position: Vec3, size: UVec2, color: Color, nine_slice: &NineSliceAndMaterial, )

Source§

fn nine_slice_stretch( &mut self, position: Vec3, size: UVec2, color: Color, nine_slice: &NineSliceAndMaterial, )

Source§

fn set_origin(&mut self, position: Vec2)

Source§

fn set_clear_color(&mut self, color: Color)

Source§

fn tilemap_params( &mut self, position: Vec3, tiles: &[u16], width: u16, atlas_ref: &FixedAtlas, scale: u8, )

Source§

fn text_draw( &mut self, position: Vec3, text: &str, font_and_mat: &FontAndMaterial, color: &Color, )

Source§

fn now(&self) -> Millis

Source§

fn physical_aspect_ratio(&self) -> AspectRatio

Source§

fn physical_size(&self) -> UVec2

Source§

fn set_virtual_size(&mut self, virtual_size: UVec2)

Source§

fn set_viewport(&mut self, viewport_strategy: ViewportStrategy)

Source§

fn viewport(&self) -> &ViewportStrategy

Source§

fn set_scale(&mut self, scale_factor: VirtualScale)

Source§

impl Resource for Render

Auto Trait Implementations§

§

impl Freeze for Render

§

impl !RefUnwindSafe for Render

§

impl Send for Render

§

impl Sync for Render

§

impl Unpin for Render

§

impl !UnwindSafe for Render

Blanket Implementations§

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> Downcast<T> for T

Source§

fn downcast(&self) -> &T

Source§

impl<T> Downcast for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
Source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
Source§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
Source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Source§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

Source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<D> OwoColorize for D

Source§

fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>
where C: Color,

Set the foreground color generically Read more
Source§

fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>
where C: Color,

Set the background color generically. Read more
Source§

fn black<'a>(&'a self) -> FgColorDisplay<'a, Black, Self>

Change the foreground color to black
Source§

fn on_black<'a>(&'a self) -> BgColorDisplay<'a, Black, Self>

Change the foreground color to black
Source§

fn red<'a>(&'a self) -> FgColorDisplay<'a, Red, Self>

Change the foreground color to red
Source§

fn on_red<'a>(&'a self) -> BgColorDisplay<'a, Red, Self>

Change the foreground color to red
Source§

fn green<'a>(&'a self) -> FgColorDisplay<'a, Green, Self>

Change the foreground color to green
Source§

fn on_green<'a>(&'a self) -> BgColorDisplay<'a, Green, Self>

Change the foreground color to green
Source§

fn yellow<'a>(&'a self) -> FgColorDisplay<'a, Yellow, Self>

Change the foreground color to yellow
Source§

fn on_yellow<'a>(&'a self) -> BgColorDisplay<'a, Yellow, Self>

Change the foreground color to yellow
Source§

fn blue<'a>(&'a self) -> FgColorDisplay<'a, Blue, Self>

Change the foreground color to blue
Source§

fn on_blue<'a>(&'a self) -> BgColorDisplay<'a, Blue, Self>

Change the foreground color to blue
Source§

fn magenta<'a>(&'a self) -> FgColorDisplay<'a, Magenta, Self>

Change the foreground color to magenta
Source§

fn on_magenta<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>

Change the foreground color to magenta
Source§

fn purple<'a>(&'a self) -> FgColorDisplay<'a, Magenta, Self>

Change the foreground color to purple
Source§

fn on_purple<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>

Change the foreground color to purple
Source§

fn cyan<'a>(&'a self) -> FgColorDisplay<'a, Cyan, Self>

Change the foreground color to cyan
Source§

fn on_cyan<'a>(&'a self) -> BgColorDisplay<'a, Cyan, Self>

Change the foreground color to cyan
Source§

fn white<'a>(&'a self) -> FgColorDisplay<'a, White, Self>

Change the foreground color to white
Source§

fn on_white<'a>(&'a self) -> BgColorDisplay<'a, White, Self>

Change the foreground color to white
Source§

fn bright_black<'a>(&'a self) -> FgColorDisplay<'a, BrightBlack, Self>

Change the foreground color to bright black
Source§

fn on_bright_black<'a>(&'a self) -> BgColorDisplay<'a, BrightBlack, Self>

Change the foreground color to bright black
Source§

fn bright_red<'a>(&'a self) -> FgColorDisplay<'a, BrightRed, Self>

Change the foreground color to bright red
Source§

fn on_bright_red<'a>(&'a self) -> BgColorDisplay<'a, BrightRed, Self>

Change the foreground color to bright red
Source§

fn bright_green<'a>(&'a self) -> FgColorDisplay<'a, BrightGreen, Self>

Change the foreground color to bright green
Source§

fn on_bright_green<'a>(&'a self) -> BgColorDisplay<'a, BrightGreen, Self>

Change the foreground color to bright green
Source§

fn bright_yellow<'a>(&'a self) -> FgColorDisplay<'a, BrightYellow, Self>

Change the foreground color to bright yellow
Source§

fn on_bright_yellow<'a>(&'a self) -> BgColorDisplay<'a, BrightYellow, Self>

Change the foreground color to bright yellow
Source§

fn bright_blue<'a>(&'a self) -> FgColorDisplay<'a, BrightBlue, Self>

Change the foreground color to bright blue
Source§

fn on_bright_blue<'a>(&'a self) -> BgColorDisplay<'a, BrightBlue, Self>

Change the foreground color to bright blue
Source§

fn bright_magenta<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>

Change the foreground color to bright magenta
Source§

fn on_bright_magenta<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>

Change the foreground color to bright magenta
Source§

fn bright_purple<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>

Change the foreground color to bright purple
Source§

fn on_bright_purple<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>

Change the foreground color to bright purple
Source§

fn bright_cyan<'a>(&'a self) -> FgColorDisplay<'a, BrightCyan, Self>

Change the foreground color to bright cyan
Source§

fn on_bright_cyan<'a>(&'a self) -> BgColorDisplay<'a, BrightCyan, Self>

Change the foreground color to bright cyan
Source§

fn bright_white<'a>(&'a self) -> FgColorDisplay<'a, BrightWhite, Self>

Change the foreground color to bright white
Source§

fn on_bright_white<'a>(&'a self) -> BgColorDisplay<'a, BrightWhite, Self>

Change the foreground color to bright white
Source§

fn bold<'a>(&'a self) -> BoldDisplay<'a, Self>

Make the text bold
Source§

fn dimmed<'a>(&'a self) -> DimDisplay<'a, Self>

Make the text dim
Source§

fn italic<'a>(&'a self) -> ItalicDisplay<'a, Self>

Make the text italicized
Source§

fn underline<'a>(&'a self) -> UnderlineDisplay<'a, Self>

Make the text italicized
Make the text blink
Make the text blink (but fast!)
Source§

fn reversed<'a>(&'a self) -> ReversedDisplay<'a, Self>

Swap the foreground and background colors
Source§

fn hidden<'a>(&'a self) -> HiddenDisplay<'a, Self>

Hide the text
Source§

fn strikethrough<'a>(&'a self) -> StrikeThroughDisplay<'a, Self>

Cross out the text
Source§

fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>
where Color: DynColor,

Set the foreground color at runtime. Only use if you do not know which color will be used at compile-time. If the color is constant, use either OwoColorize::fg or a color-specific method, such as OwoColorize::green, Read more
Source§

fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>
where Color: DynColor,

Set the background color at runtime. Only use if you do not know what color to use at compile-time. If the color is constant, use either OwoColorize::bg or a color-specific method, such as OwoColorize::on_yellow, Read more
Source§

fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>

Set the foreground color to a specific RGB value.
Source§

fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>

Set the background color to a specific RGB value.
Source§

fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>

Sets the foreground color to an RGB value.
Source§

fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>

Sets the background color to an RGB value.
Source§

fn style(&self, style: Style) -> Styled<&Self>

Apply a runtime-determined style
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

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

Initializes a with the given initializer. Read more
Source§

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

Dereferences the given pointer. Read more
Source§

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

Mutably dereferences the given pointer. Read more
Source§

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>,

Source§

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>,

Source§

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.
Source§

impl<T> Upcast<T> for T

Source§

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

Source§

impl<T> WithSubscriber for T

Source§

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
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

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

Source§

impl<T> WasmNotSendSync for T

Source§

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