Struct composable::views::gpu::Output
source · pub struct Output { /* private fields */ }
Available on crate features
unstable
and views
only.Expand description
Implementations§
source§impl Output
impl Output
sourcepub fn into_inner(self) -> (Vec<(i16, i16, [u8; 4])>, Vec<u32>)
pub fn into_inner(self) -> (Vec<(i16, i16, [u8; 4])>, Vec<u32>)
Consumes the Output
and returns the constructed indexed-triangle data.
- vertices are stored as (x, y, rgba) tuples
- indices are stored as 32-bit offsets
§Example
A WGSL shader that consumes this Output
’s output:
struct VertexInput {
@location(0) xy: u32,
@location(1) rgba: u32,
};
struct VertexOutput {
@builtin(position) xyzw: vec4<f32>,
@location(0) rgba: vec4<f32>,
};
@vertex
fn vs_main(
in: VertexInput,
) -> VertexOutput {
var out: VertexOutput;
out.xyzw = vec4<f32>(unpack2x16snorm(in.xy), 1.0, 1.0);
out.rgba = unpack4x8unorm(in.rgba);
return out;
}
@fragment
fn fs_main(in: VertexOutput) -> @location(0) vec4<f32> {
return in.rgba;
}
Trait Implementations§
source§impl Output for Output
impl Output for Output
source§fn begin(&mut self, x: f32, y: f32, rgba: [u8; 4], transform: &Transform)
fn begin(&mut self, x: f32, y: f32, rgba: [u8; 4], transform: &Transform)
Begins a new path. Read more
source§fn quadratic_bezier_to(&mut self, x1: f32, y1: f32, x: f32, y: f32)
fn quadratic_bezier_to(&mut self, x1: f32, y1: f32, x: f32, y: f32)
Adds a quadratic Bézier to the current path. Read more
Auto Trait Implementations§
impl Freeze for Output
impl RefUnwindSafe for Output
impl Send for Output
impl Sync for Output
impl Unpin for Output
impl UnwindSafe for Output
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more