easy_gpu/assets/
buffer.rs1use wgpu::{BufferDescriptor, Device};
2use wgpu::util::{BufferInitDescriptor, DeviceExt};
3pub use wgpu::BufferUsages;
4
5pub struct Buffer{
6 pub(crate) buffer: wgpu::Buffer,
7}
8
9impl Buffer {
10 pub fn new(device: &Device,size: u64,usage: BufferUsages)->Self{
11 let buffer = device.create_buffer(&BufferDescriptor {
12 label: None,
13 size,
14 usage,
15 mapped_at_creation: false,
16 });
17 Self { buffer }
18 }
19 pub fn from_contents(device: &Device,contents: &[u8],usage: BufferUsages)->Self{
20 let buffer = device.create_buffer_init(&BufferInitDescriptor {
21 label: None,
22 contents,
23 usage,
24 });
25 Self { buffer }
26 }
27}