diff options
| author | Sébastien Crozet <sebcrozet@dimforge.com> | 2024-05-19 15:52:38 +0200 |
|---|---|---|
| committer | Sébastien Crozet <sebastien@crozet.re> | 2024-05-25 12:00:15 +0200 |
| commit | 174778067db4c61981cedc6cbf7cd7e893328eb5 (patch) | |
| tree | dc688a6d81bb1a39fcdf77f058c3c997215a4009 /src_testbed | |
| parent | 15731373ebf8319abc49cd71b9ca44edee62ac75 (diff) | |
| download | rapier-174778067db4c61981cedc6cbf7cd7e893328eb5.tar.gz rapier-174778067db4c61981cedc6cbf7cd7e893328eb5.tar.bz2 rapier-174778067db4c61981cedc6cbf7cd7e893328eb5.zip | |
feat: ui to set the number of simulation steps per frame
Diffstat (limited to 'src_testbed')
| -rw-r--r-- | src_testbed/ui.rs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src_testbed/ui.rs b/src_testbed/ui.rs index 491e15c..11c9bb7 100644 --- a/src_testbed/ui.rs +++ b/src_testbed/ui.rs @@ -172,8 +172,8 @@ pub fn update_ui( ); let mut substep_params = *integration_parameters; - substep_params.dt /= substep_params.num_solver_iterations.get() as f32; - let curr_erp = substep_params.erp(); + substep_params.dt /= substep_params.num_solver_iterations.get() as Real; + let curr_erp = substep_params.erp(); let curr_cfm_factor = substep_params.cfm_factor(); ui.add( Slider::new( @@ -220,6 +220,8 @@ pub fn update_ui( Slider::new(&mut integration_parameters.min_island_size, 1..=10_000) .text("min island size"), ); + ui.add(Slider::new(&mut state.nsteps, 1..=100).text("sims. per frame")); + let mut frequency = integration_parameters.inv_dt().round() as u32; ui.add(Slider::new(&mut frequency, 0..=240).text("frequency (Hz)")); integration_parameters.set_inv_dt(frequency as Real); |
