glaze 0.0.1

A simple renderer developed for the Scone game engine
Documentation
pub struct Renderer {
    pub(crate) device: wgpu::Device,
    queue: wgpu::Queue,
    adapter: wgpu::Adapter,
}

impl Renderer {
    pub fn new(device: wgpu::Device, queue: wgpu::Queue, adapter: wgpu::Adapter) -> Self {
        Self {
            device,
            queue,
            adapter,
        }
    }

    pub fn render(&mut self, texture: wgpu::SurfaceTexture) {
        let view = texture
            .texture
            .create_view(&wgpu::TextureViewDescriptor::default());

        let mut encoder = self
            .device
            .create_command_encoder(&wgpu::CommandEncoderDescriptor { label: None });

        let render_pass = encoder.begin_render_pass(&wgpu::RenderPassDescriptor {
            label: None,
            color_attachments: &[Some(wgpu::RenderPassColorAttachment {
                view: &view,
                resolve_target: None,
                ops: wgpu::Operations {
                    load: wgpu::LoadOp::Clear(wgpu::Color {
                        r: 0.5,
                        g: 0.5,
                        b: 0.5,
                        a: 1.0,
                    }),
                    store: true,
                },
            })],
            depth_stencil_attachment: None,
        });

        drop(render_pass);

        self.queue.submit(std::iter::once(encoder.finish()));
        texture.present();
    }
}