H-5770: Add PlaybackContext for real-time simulation playback #8295
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.

🌟 What is the purpose of this PR?
Introduce a new PlaybackContext that handles viewing simulation frames at real-time speed based on
dt, separate from the computation speed. This allows the simulation to be computed as fast as possible while the visualization plays back at the correct real-time speed.🔗 Related links
🚫 Blocked by
Nothing
🔍 What does this change?
playback/context.tswithPlaybackContextValuetype defining playback state and actionsplayback/provider.tsxwithrequestAnimationFrame-based playback loopcurrentViewedFramefromSimulationContexttoPlaybackContextPlaybackContextfor frame viewingSimulationContextnow only handles computation/generation of framesPlaybackContextadvances frames at real-time speed (60Hz max) based ondtPre-Merge Checklist 🚀
🚢 Has this modified a publishable library?
This PR:
📜 Does this require a change to the docs?
The changes in this PR:
🕸️ Does this require a change to the Turbo Graph?
The changes in this PR:
None
🐾 Next steps
None
🛡 What tests cover this?
❓ How to test this?
yarn devdtrather than computation speed📹 Demo
N/A