Skip to content

Draft: New-Newton-API - #7145

Draft
pbarejko wants to merge 5 commits into
isaac-sim:developfrom
daniela-hase:dev/new-newton-api
Draft

Draft: New-Newton-API#7145
pbarejko wants to merge 5 commits into
isaac-sim:developfrom
daniela-hase:dev/new-newton-api

Conversation

@pbarejko

Copy link
Copy Markdown
Collaborator

Description

Important

Confirm the pull request base before submitting. Target develop for all
contributions. The release/3.0.0-beta2 branch is a frozen stable landing
snapshot and is not used for ongoing maintenance.

Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context.
List any dependencies that are required for this change.

Fixes # (issue)

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (existing functionality will not work without user modification)
  • Documentation update

Screenshots

Please attach before and after screenshots of the change if applicable.

Checklist

  • I have read and understood the contribution guidelines
  • I have run the pre-commit checks with ./isaaclab.sh --format
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • I have added a changelog fragment under source/<pkg>/changelog.d/ for every touched package (do not edit CHANGELOG.rst or bump extension.toml — CI handles that)
  • I have added my name to the CONTRIBUTORS.md or my name already exists there

@pbarejko
pbarejko requested a review from a team August 18, 2026 00:18
@github-actions github-actions Bot added isaac-lab Related to Isaac Lab team infrastructure labels Aug 18, 2026
@pbarejko
pbarejko marked this pull request as draft August 18, 2026 00:18
@greptile-apps

greptile-apps Bot commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This draft migrates Newton camera rendering from SensorTiledCamera to the new RenderContext/SensorCamera APIs and updates Newton-related dependencies. It also allows camera-imported site shapes to serve as frame-view sources.

  • Reworks camera outputs, depth handling, transforms, and render dispatch for the new API.
  • Switches Newton to the camera-sensor fork and adds the Vulkan renderer dependency.
  • Excludes Newton site shapes from collision-shape rejection and adds camera-site coverage.
  • Leaves the enabled-by-default renderer light creation disabled.

Confidence Score: 4/5

The default-light regression should be fixed before merging because the renderer silently ignores an enabled configuration and can leave scenes unlit.

The new initialization path constructs the Vulkan render context but comments out the only operation that implements the enabled-by-default directional-light behavior.

Files Needing Attention: source/isaaclab_newton/isaaclab_newton/renderers/newton_warp_renderer.py

Important Files Changed

Filename Overview
source/isaaclab_newton/isaaclab_newton/renderers/newton_warp_renderer.py Migrates the complete camera-rendering path to the new Newton API, but no longer honors the default-light configuration.
source/isaaclab_newton/isaaclab_newton/sim/views/newton_site_frame_view.py Filters site-flagged shapes out of collision-path rejection so imported camera sites can be used as frame sources.
source/isaaclab_newton/test/sim/test_views_xform_prim_newton.py Adds coverage showing that camera prims imported as Newton sites are accepted by FrameView.
pyproject.toml Adds the Vulkan renderer dependency and redirects Newton to the camera-sensor development fork.
uv.lock Locks the Newton fork revision and corresponding dependency-resolution changes.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart LR
  Camera["Isaac Lab Camera"] --> Update["RenderData.update"]
  Update --> Sensor["Newton SensorCamera"]
  Camera --> Outputs["RenderData.set_outputs"]
  Sensor --> Context["Vulkan RenderContext.render"]
  Outputs --> Context
  Context --> Buffers["Color / depth / segmentation buffers"]
Loading

Reviews (1): Last reviewed commit: "Update pyproject to point to vulkan rend..." | Re-trigger Greptile

Comment on lines +463 to +464
# if self.cfg.create_default_light:
# self.render_context.create_default_light(enable_shadows=self.cfg.enable_shadows)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Default light creation is disabled

When a scene relies on the enabled-by-default create_default_light setting, initialization skips the only call that creates that directional light, causing color output to render unlit or dark instead of honoring the renderer configuration.

Suggested change
# if self.cfg.create_default_light:
# self.render_context.create_default_light(enable_shadows=self.cfg.enable_shadows)
if self.cfg.create_default_light:
self.render_context.create_default_light(enable_shadows=self.cfg.enable_shadows)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

infrastructure isaac-lab Related to Isaac Lab team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants