summaryrefslogtreecommitdiffstats
path: root/wgpu/src/buffer
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2022-11-15 21:32:18 +0100
committerLibravatar GitHub <noreply@github.com>2022-11-15 21:32:18 +0100
commit5b0dfcd0b0a9f25a3004dbc2cad3dea8220a76a1 (patch)
tree9140703c7099cf09de9208823f0b93c07a6069c5 /wgpu/src/buffer
parent042020b016705748f83e43c2d47917faa29f7236 (diff)
parent365f37a3ae10e7aff407b84050f77da10820866e (diff)
downloadiced-5b0dfcd0b0a9f25a3004dbc2cad3dea8220a76a1.tar.gz
iced-5b0dfcd0b0a9f25a3004dbc2cad3dea8220a76a1.tar.bz2
iced-5b0dfcd0b0a9f25a3004dbc2cad3dea8220a76a1.zip
Merge pull request #1524 from bungoboingo/fix/gradients_wasm
Additional cfg for wasm target for gradients
Diffstat (limited to 'wgpu/src/buffer')
-rw-r--r--wgpu/src/buffer/dynamic.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/wgpu/src/buffer/dynamic.rs b/wgpu/src/buffer/dynamic.rs
index c0c48c74..2a675d81 100644
--- a/wgpu/src/buffer/dynamic.rs
+++ b/wgpu/src/buffer/dynamic.rs
@@ -24,6 +24,7 @@ impl<T: ShaderType + WriteInto> Buffer<T> {
)
}
+ #[cfg(not(target_arch = "wasm32"))]
/// Creates a new dynamic storage buffer.
pub fn storage(device: &wgpu::Device, label: &'static str) -> Self {
Buffer::new(
@@ -91,6 +92,7 @@ impl<T: ShaderType + WriteInto> Buffer<T> {
Internal::Uniform(_) => {
wgpu::BufferUsages::UNIFORM | wgpu::BufferUsages::COPY_DST
}
+ #[cfg(not(target_arch = "wasm32"))]
Internal::Storage(_) => {
wgpu::BufferUsages::STORAGE | wgpu::BufferUsages::COPY_DST
}
@@ -154,6 +156,8 @@ impl<T: ShaderType + WriteInto> Buffer<T> {
// Currently supported dynamic buffers.
enum Internal {
Uniform(encase::DynamicUniformBuffer<Vec<u8>>),
+ #[cfg(not(target_arch = "wasm32"))]
+ //storage buffers are not supported on wgpu wasm target (yet)
Storage(encase::DynamicStorageBuffer<Vec<u8>>),
}
@@ -168,6 +172,7 @@ impl Internal {
.write(value)
.expect("Error when writing to dynamic uniform buffer.")
as u32,
+ #[cfg(not(target_arch = "wasm32"))]
Internal::Storage(buf) => buf
.write(value)
.expect("Error when writing to dynamic storage buffer.")
@@ -179,6 +184,7 @@ impl Internal {
pub(super) fn get_ref(&self) -> &Vec<u8> {
match self {
Internal::Uniform(buf) => buf.as_ref(),
+ #[cfg(not(target_arch = "wasm32"))]
Internal::Storage(buf) => buf.as_ref(),
}
}
@@ -190,6 +196,7 @@ impl Internal {
buf.as_mut().clear();
buf.set_offset(0);
}
+ #[cfg(not(target_arch = "wasm32"))]
Internal::Storage(buf) => {
buf.as_mut().clear();
buf.set_offset(0);