diff --git a/crates/coremem/src/sim/spirv/mod.rs b/crates/coremem/src/sim/spirv/mod.rs index cde1694..2034548 100644 --- a/crates/coremem/src/sim/spirv/mod.rs +++ b/crates/coremem/src/sim/spirv/mod.rs @@ -245,8 +245,13 @@ where for y in 0..dim.y() { let this_slice; (this_slice, undispatched_backing) = undispatched_backing.split_at_mut(dim.x() as usize); - let view = OffsetDimSlice::new(Vec3u::new(0, y, z), Vec3u::new(this_slice.len() as u32, 1, 1), this_slice); - s.spawn(move |_| stim.eval_into(t_sec, feature_size, view)); + s.spawn(move |_| { + for (x, out) in this_slice.iter_mut().enumerate() { + *out = stim.at(t_sec, feature_size, Index::new(x as u32, y, z)); + } + }); + // let view = OffsetDimSlice::new(Vec3u::new(0, y, z), Vec3u::new(this_slice.len() as u32, 1, 1), this_slice); + // s.spawn(move |_| stim.eval_into(t_sec, feature_size, view)); } } });