feat(physics): allow gamepieces to sleep & adding simulation debt into timestep#1421
feat(physics): allow gamepieces to sleep & adding simulation debt into timestep#1421Dhruv-0-Arora wants to merge 10 commits into
Conversation
timestepping: adding simulation timedebt for when FPS dropping Signed-off-by: Dhruv Arora <dhruv.arora1@autodesk.com>
Signed-off-by: Dhruv Arora <dhruv.arora1@autodesk.com>
ab6c1dd to
3eb1cd4
Compare
Signed-off-by: Dhruv Arora <dhruv.arora1@autodesk.com>
3eb1cd4 to
1b0a76d
Compare
Signed-off-by: Dhruv Arora <dhruv.arora1@autodesk.com>
9788651 to
5c391f6
Compare
There was a problem hiding this comment.
Drag Mode is broken
Fission._.Synthesis.-.Google.Chrome.2026-07-17.09-08-48.mp4
It appears that you can't use drag mode for objects that are asleep, but the force is still applied once they wake up.
In addition, jittering is a bit worse on my MacBooks 120hz monitor, but still happens on my home desktop (weaker computer and 60hz monitor).
| // driver stiffness independent of construction-time frame rate. | ||
| export function getLastDeltaT(): number { | ||
| return lastDeltaT | ||
| return STANDARD_SIMULATION_PERIOD |
There was a problem hiding this comment.
this should probably be removed. This name implies it is the last delta t and that it changes, when it is actually a constant (that can be referenced directly where this is used)
Co-authored-by: Azalea Colburn <62953415+azaleacolburn@users.noreply.github.com>
Signed-off-by: Dhruv Arora <dhruv.arora1@autodesk.com>
Signed-off-by: Dhruv Arora <dhruv.arora1@autodesk.com>
Signed-off-by: Dhruv Arora <dhruv.arora1@autodesk.com>
Signed-off-by: Dhruv Arora <dhruv.arora1@autodesk.com>
For me, this really only happens on the 2026 field after I go in and push some balls around (once the fps recovers the jittering starts to slow down and eventually goes away). If you are struggling to reproduce it try throttling your CPU (it makes the jittering a lot worse for me). |
Signed-off-by: Dhruv Arora <dhruv.arora1@autodesk.com>
f80dac9 to
785f09b
Compare
Important
The way that gamepieces go to sleep when the field first spawns is something we should look into:
Currently, they are set to sleep (in this PR) however the MirabufSceneObject instantly wakes them up to move them to their desired location. This will tank performance for the first ~5 seconds while the gamepieces wait to go back to sleep.
SYNTH-257
Before merging, ensure the following criteria are met: