summaryrefslogtreecommitdiff
path: root/workspaces/main/shaders/particle_compute.wgsl
diff options
context:
space:
mode:
Diffstat (limited to 'workspaces/main/shaders/particle_compute.wgsl')
-rw-r--r--workspaces/main/shaders/particle_compute.wgsl12
1 files changed, 6 insertions, 6 deletions
diff --git a/workspaces/main/shaders/particle_compute.wgsl b/workspaces/main/shaders/particle_compute.wgsl
index d7a24b6..2960cc4 100644
--- a/workspaces/main/shaders/particle_compute.wgsl
+++ b/workspaces/main/shaders/particle_compute.wgsl
@@ -1,9 +1,9 @@
// Particle simulation (compute shader) - V2
struct Particle {
- pos: vec4<f32>,
- vel: vec4<f32>,
- rot: vec4<f32>,
- color: vec4<f32>,
+ pos: vec4f,
+ vel: vec4f,
+ rot: vec4f,
+ color: vec4f,
};
#include "sequence_uniforms"
@@ -12,14 +12,14 @@ struct Particle {
@group(0) @binding(1) var<uniform> uniforms: UniformsSequenceParams;
@compute @workgroup_size(64)
-fn main(@builtin(global_invocation_id) id: vec3<u32>) {
+fn main(@builtin(global_invocation_id) id: vec3u) {
let i = id.x;
if (i >= arrayLength(&particles)) {
return;
}
var p = particles[i];
let new_pos = p.pos.xyz + p.vel.xyz * 0.016;
- p.pos = vec4<f32>(new_pos, p.pos.w);
+ p.pos = vec4f(new_pos, p.pos.w);
p.vel.y = p.vel.y - 0.01 * (1.0 + uniforms.audio_intensity * 5.0);
p.rot.x = p.rot.x + p.rot.y * 0.016;
if (p.pos.y < -1.5) {