[Visualizers] Add Viser visualizer support#4665
Open
eric-heiden wants to merge 6 commits intoisaac-sim:dev/newtonfrom
Open
[Visualizers] Add Viser visualizer support#4665eric-heiden wants to merge 6 commits intoisaac-sim:dev/newtonfrom
eric-heiden wants to merge 6 commits intoisaac-sim:dev/newtonfrom
Conversation
…rations - Introduced Viser visualizer configuration and implementation. - Updated AppLauncher to support Viser alongside existing visualizers (Rerun, Newton, Omniverse). - Modified simulation context and scene data provider to accommodate Viser. - Enhanced documentation to reflect new visualizer options. Signed-off-by: Eric Heiden <eric-heiden@outlook.com>
Signed-off-by: Eric Heiden <eric-heiden@outlook.com>
Signed-off-by: Eric Heiden <eric-heiden@outlook.com>
Signed-off-by: Eric Heiden <eric-heiden@outlook.com>
Signed-off-by: Eric Heiden <eric-heiden@outlook.com>
Contributor
Greptile SummaryThis PR adds Viser as a third Newton-based visualizer alongside the existing Newton and Rerun visualizers. The implementation follows the established pattern and integrates cleanly with the visualizer architecture. Key Changes:
Issues Found:
Confidence Score: 4/5
Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[User runs script with --visualizer viser] --> B[AppLauncher parses CLI args]
B --> C{Omniverse required?}
C -->|No: viser only| D[Standalone mode - No SimulationApp]
C -->|Yes: kit visualizer or cameras| E[Launch SimulationApp]
D --> F[SimulationContext.initialize]
E --> F
F --> G[resolve_visualizer_types]
G --> H{CLI override?}
H -->|Yes| I[Filter visualizer_cfgs by CLI types]
H -->|No| J[Use all visualizer_cfgs]
I --> K[Apply CLI max_worlds override]
J --> K
K --> L[Create ViserVisualizer instance]
L --> M[ViserVisualizer.initialize]
M --> N[Get Newton model from SceneDataProvider]
N --> O[Create NewtonViewerViser on port 8080]
O --> P[Disable client rebuild if bundled]
P --> Q[Set camera view]
Q --> R[Simulation loop: step calls]
R --> S[ViserVisualizer.step]
S --> T[Update Newton state]
T --> U[viewer.log_state]
U --> V{Continue?}
V -->|Yes| R
V -->|No| W[ViserVisualizer.close]
W --> X[Finalize recording if enabled]
Last reviewed commit: 7610553 |
Align AppLauncher argument documentation and help text with the internal `kit` visualizer name. Co-authored-by: Cursor <cursoragent@cursor.com>
kellyguo11
reviewed
Feb 23, 2026
Contributor
kellyguo11
left a comment
There was a problem hiding this comment.
is it possible to add some unit tests for this?
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Description
--visualizer_max_worldsCLI option that will limit the number of envs shown in the Newton/Rerun/Viser visualizersType of change
Screenshots
Run command:
Run command:
Checklist
pre-commitchecks with./isaaclab.sh --formatconfig/extension.tomlfileCONTRIBUTORS.mdor my name already exists there