summaryrefslogtreecommitdiffstats
path: root/wgpu/src/buffers
diff options
context:
space:
mode:
Diffstat (limited to 'wgpu/src/buffers')
-rw-r--r--wgpu/src/buffers/dynamic.rs40
1 files changed, 20 insertions, 20 deletions
diff --git a/wgpu/src/buffers/dynamic.rs b/wgpu/src/buffers/dynamic.rs
index dc30c56f..63955b6e 100644
--- a/wgpu/src/buffers/dynamic.rs
+++ b/wgpu/src/buffers/dynamic.rs
@@ -4,23 +4,23 @@ use encase::ShaderType;
use std::marker::PhantomData;
// Currently supported dynamic buffers.
-enum DynamicBufferType {
+enum BufferType {
Uniform(encase::DynamicUniformBuffer<Vec<u8>>),
Storage(encase::DynamicStorageBuffer<Vec<u8>>),
}
-impl DynamicBufferType {
+impl BufferType {
/// Writes the current value to its CPU buffer with proper alignment.
pub(super) fn write<T: ShaderType + WriteInto>(
&mut self,
value: &T,
) -> wgpu::DynamicOffset {
match self {
- DynamicBufferType::Uniform(buf) => buf
+ BufferType::Uniform(buf) => buf
.write(value)
.expect("Error when writing to dynamic uniform buffer.")
as u32,
- DynamicBufferType::Storage(buf) => buf
+ BufferType::Storage(buf) => buf
.write(value)
.expect("Error when writing to dynamic storage buffer.")
as u32,
@@ -30,19 +30,19 @@ impl DynamicBufferType {
/// Returns bytearray of aligned CPU buffer.
pub(super) fn get_ref(&self) -> &Vec<u8> {
match self {
- DynamicBufferType::Uniform(buf) => buf.as_ref(),
- DynamicBufferType::Storage(buf) => buf.as_ref(),
+ BufferType::Uniform(buf) => buf.as_ref(),
+ BufferType::Storage(buf) => buf.as_ref(),
}
}
/// Resets the CPU buffer.
pub(super) fn clear(&mut self) {
match self {
- DynamicBufferType::Uniform(buf) => {
+ BufferType::Uniform(buf) => {
buf.as_mut().clear();
buf.set_offset(0);
}
- DynamicBufferType::Storage(buf) => {
+ BufferType::Storage(buf) => {
buf.as_mut().clear();
buf.set_offset(0);
}
@@ -51,21 +51,21 @@ impl DynamicBufferType {
}
/// A dynamic buffer is any type of buffer which does not have a static offset.
-pub(crate) struct DynamicBuffer<T: ShaderType> {
+pub(crate) struct Buffer<T: ShaderType> {
offsets: Vec<wgpu::DynamicOffset>,
- cpu: DynamicBufferType,
+ cpu: BufferType,
gpu: wgpu::Buffer,
label: &'static str,
size: u64,
_data: PhantomData<T>,
}
-impl<T: ShaderType + WriteInto> DynamicBuffer<T> {
+impl<T: ShaderType + WriteInto> Buffer<T> {
/// Creates a new dynamic uniform buffer.
pub fn uniform(device: &wgpu::Device, label: &'static str) -> Self {
- DynamicBuffer::new(
+ Buffer::new(
device,
- DynamicBufferType::Uniform(encase::DynamicUniformBuffer::new(
+ BufferType::Uniform(encase::DynamicUniformBuffer::new(
Vec::new(),
)),
label,
@@ -75,9 +75,9 @@ impl<T: ShaderType + WriteInto> DynamicBuffer<T> {
/// Creates a new dynamic storage buffer.
pub fn storage(device: &wgpu::Device, label: &'static str) -> Self {
- DynamicBuffer::new(
+ Buffer::new(
device,
- DynamicBufferType::Storage(encase::DynamicStorageBuffer::new(
+ BufferType::Storage(encase::DynamicStorageBuffer::new(
Vec::new(),
)),
label,
@@ -87,7 +87,7 @@ impl<T: ShaderType + WriteInto> DynamicBuffer<T> {
fn new(
device: &wgpu::Device,
- dynamic_buffer_type: DynamicBufferType,
+ dynamic_buffer_type: BufferType,
label: &'static str,
usage: wgpu::BufferUsages,
) -> Self {
@@ -96,7 +96,7 @@ impl<T: ShaderType + WriteInto> DynamicBuffer<T> {
Self {
offsets: Vec::new(),
cpu: dynamic_buffer_type,
- gpu: DynamicBuffer::<T>::create_gpu_buffer(
+ gpu: Buffer::<T>::create_gpu_buffer(
device,
label,
usage,
@@ -139,15 +139,15 @@ impl<T: ShaderType + WriteInto> DynamicBuffer<T> {
if self.size < new_size {
let usages = match self.cpu {
- DynamicBufferType::Uniform(_) => {
+ BufferType::Uniform(_) => {
wgpu::BufferUsages::UNIFORM | wgpu::BufferUsages::COPY_DST
}
- DynamicBufferType::Storage(_) => {
+ BufferType::Storage(_) => {
wgpu::BufferUsages::STORAGE | wgpu::BufferUsages::COPY_DST
}
};
- self.gpu = DynamicBuffer::<T>::create_gpu_buffer(
+ self.gpu = Buffer::<T>::create_gpu_buffer(
device, self.label, usages, new_size,
);
self.size = new_size;