From bf498dca2c333bd66775005571ef915cf27c3ee8 Mon Sep 17 00:00:00 2001 From: "Claudius \"keldu\" Holeksa" Date: Wed, 14 Jan 2026 18:45:49 +0100 Subject: Got physics working again --- examples/particles_gpu/particles_gpu.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'examples/particles_gpu/particles_gpu.cpp') diff --git a/examples/particles_gpu/particles_gpu.cpp b/examples/particles_gpu/particles_gpu.cpp index dfd5af3..abbc192 100644 --- a/examples/particles_gpu/particles_gpu.cpp +++ b/examples/particles_gpu/particles_gpu.cpp @@ -42,12 +42,15 @@ saw::error_or lbm_main(int argc, char** argv){ } } + saw::data> time_step; + time_step.at({}).set(0.05f); + for(saw::data dt{0u}; dt < saw::data{32ul}; ++dt){ // Do Verlet Step for(saw::data i{0u}; i < particles.size(); ++i){ auto& part_i = particles.at(i); - verlet_step_lambda(part_i,{0.05f}); + verlet_step_lambda(part_i,time_step); auto& body_i = part_i.template get<"rigid_body">(); auto& acc_i = body_i.template get<"acceleration">(); @@ -70,23 +73,23 @@ saw::error_or lbm_main(int argc, char** argv){ auto& pos_j = body_j.template get<"position">(); auto& pos_old_j = body_j.template get<"position_old">(); - auto res = broadphase_collision_distance(part_i, part_j); + auto res = broadphase_collision_distance_squared(part_i, part_j); if(res.first){ //std::cout<<"Collision"<