use crate::{prelude::BindingGroup, renderer::Draw, renderer::RenderPassExt};
#[derive(Debug)]
pub struct VertexBuffer {
pub size: u32,
pub wgpu: wgpu::Buffer,
}
impl Draw for VertexBuffer {
fn draw<'a, 'b, 'c>(&'a self, binding: &'a BindingGroup, pass: &'b mut wgpu::RenderPass<'a>) {
pass.set_binding(binding, &[]);
pass.draw_buffer(&self);
}
}
impl VertexBuffer {
pub fn slice(&self) -> wgpu::BufferSlice {
self.wgpu.slice(0..self.size as u64)
}
}