Crate wgpu_playground[][src]

Expand description

Usage:

use wgpu_playground::winit::{
    event::WindowEvent, event_loop::ControlFlow, event_loop::EventLoop, window::Window,
};
use wgpu_playground::{wgpu, Spawner};

fn main() {
    let event_loop = EventLoop::new();
    let window = Window::new(&event_loop).unwrap();
    wgpu_playground::run::<App>(window, event_loop)
}

struct App {}

impl wgpu_playground::Playground for App {
    fn init(
        config: &wgpu::SurfaceConfiguration,
        adapter: &wgpu::Adapter,
        device: &wgpu::Device,
        queue: &wgpu::Queue,
    ) -> Self {
        Self {}
    }

    fn resize(
        &mut self,
        config: &wgpu::SurfaceConfiguration,
        device: &wgpu::Device,
        queue: &wgpu::Queue,
    ) {
        // ...
    }

    fn update(&mut self, event: WindowEvent, control_flow: &mut ControlFlow) {
        if let WindowEvent::CloseRequested = event {
            *control_flow = ControlFlow::Exit;
        }
        // ...
    }

    fn render(
        &mut self,
        view: &wgpu::TextureView,
        device: &wgpu::Device,
        queue: &wgpu::Queue,
        spawner: &Spawner,
    ) {
        // ...
    }
}

Re-exports

pub use wgpu;
pub use winit;

Modules

Projection matrices that are intended to be used when the base coordinate system (i.e. the one used by the application code) is right-handed with the the x-axis pointing right, y-axis pointing up, and z-axis pointing out of the screen.

Structs

Traits

Functions