Skip to content

Add Newton viewer rigid-body dragging - #6696

Merged
kellyguo11 merged 33 commits into
isaac-sim:developfrom
maxkra15:max/newton-viewer-support
Aug 8, 2026
Merged

Add Newton viewer rigid-body dragging#6696
kellyguo11 merged 33 commits into
isaac-sim:developfrom
maxkra15:max/newton-viewer-support

Conversation

@maxkra15

@maxkra15 maxkra15 commented Jul 23, 2026

Copy link
Copy Markdown

Summary

  • Add graph-safe right-click rigid-body dragging to the Newton visualizer for compatible standalone and coupled solvers.
  • Initialize picking before CUDA graph capture and rebind it after hard model resets.
  • Keep existing pause, resume, step, and reset behavior unchanged.

Picking is automatically disabled for headless viewers, standalone MPM, non-Newton physics, and solvers that do not consume rigid-body force input. This supersedes #6403.

Examples

  • XPBD NVIDIA-logo domino cascade.
  • VBD 4:1 block-and-tackle.
  • Three MJWarp boxes coupled to an implicit-MPM granular bed.

The coupled-MPM example uses the single-world reset support merged in #6955; this PR no longer duplicates that fix.

Performance

  • No visualizer: ~0.02 µs/tick host overhead, with no added GPU work or graph changes.
  • Interactive viewer: +2.08 µs/tick (+0.27%) with four MJWarp substeps.
  • After viewer close: 0.168 vs 0.169 ms/step, within measurement noise.

Validation

  • 212 focused unit tests passed.
  • 3 standalone-script registration tests passed.
  • XPBD, VBD, and coupled MJWarp/MPM CUDA smoke tests passed.
  • Warning-free documentation build and full pre-commit suite passed.

The Kit-only visualization-marker test requires a full Isaac Sim runtime and remains covered by CI.

@github-actions github-actions Bot added documentation Improvements or additions to documentation isaac-lab Related to Isaac Lab team labels Jul 23, 2026
@maxkra15 maxkra15 mentioned this pull request Jul 23, 2026
7 tasks
@maxkra15 maxkra15 changed the title Support Newton viewer controls and interactions Support Newton viewer controls and MJWarp dragging Jul 24, 2026
@maxkra15
maxkra15 force-pushed the max/newton-viewer-support branch from e133987 to 003103a Compare July 24, 2026 02:33
@maxkra15 maxkra15 changed the title Support Newton viewer controls and MJWarp dragging Add Newton MJWarp viewer dragging Jul 30, 2026
maxkra15 added 3 commits July 30, 2026 16:31
Apply viewer picking forces in both Newton state layouts and use an explicit rigid-body force-input capability to keep particle-only MPM excluded.
Use Newton's public force path and collapse visualizer initialization bookkeeping while preserving graph and reset safety.
@maxkra15 maxkra15 changed the title Add Newton MJWarp viewer dragging Add Newton viewer rigid-body dragging Jul 30, 2026
@kellyguo11 kellyguo11 moved this to In progress in Isaac Lab Jul 31, 2026
@maxkra15
maxkra15 marked this pull request as ready for review July 31, 2026 01:48
@maxkra15
maxkra15 requested a review from a team July 31, 2026 01:48
maxkra15 and others added 8 commits August 3, 2026 07:48
Replace the generic cube example with solver-specific XPBD domino and VBD block-and-tackle demos. Add the coupled rigid-MPM three-box example and the single-world MPM reset handling it requires.
Remove the duplicate reset changelog entry now that the scoped coupled-MPM fix is part of develop. Restore the surrounding core formatting to keep the viewer diff focused.
Comment thread source/isaaclab_contrib/isaaclab_contrib/deformable/newton_manager_cfg.py Outdated
Comment thread source/isaaclab/isaaclab/sim/simulation_context.py Outdated
Keep pulley-specific VBD contact tuning local to the standalone example instead of expanding the public solver config. Clarify that only picking inputs require initialization before CUDA graph capture.
…r-support

# Conflicts:
#	source/isaaclab_visualizers/isaaclab_visualizers/newton/newton_visualizer.py
#	source/isaaclab_visualizers/test/test_newton_adapter.py
Comment thread scripts/demos/mpm/newton_mpm_twoway_coupling.py Outdated
@matthewtrepte

Copy link
Copy Markdown
Contributor

can you change the UI text in the Newton GL viewer from Right Click - Pick objects to Right Click - Pick and drag objects?

Comment thread source/isaaclab/test/app/standalone_script_cases.py Outdated
@kellyguo11
kellyguo11 merged commit e209212 into isaac-sim:develop Aug 8, 2026
46 of 47 checks passed
@github-project-automation github-project-automation Bot moved this from In progress to Done in Isaac Lab Aug 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation isaac-lab Related to Isaac Lab team

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

6 participants