Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CONTRIBUTORS.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ Guidelines for modifications:
* Masoud Moghani
* Mateo Guaman Castro
* Maurice Rahme
* Matthew Taylor
* Michael Gussert
* Michael Lin
* Michael Noseworthy
Expand Down
1 change: 0 additions & 1 deletion apps/isaaclab.python.headless.kit
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,6 @@ app.useFabricSceneDelegate = false

# Enable Iray and pxr by setting this to "rtx,iray,pxr"
renderer.enabled = "rtx"
renderer.scenePartitioning.enabled = true # Enable before RTX initialization so env-root partitions are honored

# Avoid warning on shutdown from audio context
app.audio.enabled = false
Expand Down
1 change: 0 additions & 1 deletion apps/isaaclab.python.headless.rendering.kit
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ app.version = "3.0.0"
app.useFabricSceneDelegate = true
# Temporary, should be enabled by default in Kit soon
rtx.hydra.readTransformsFromFabricInRenderDelegate = true
renderer.scenePartitioning.enabled = true # Enable before RTX initialization so env-root partitions are honored

# Disable print outs on extension startup information
# this only disables the app print_and_log function
Expand Down
1 change: 0 additions & 1 deletion apps/isaaclab.python.kit
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,6 @@ exts."omni.kit.viewport.window".windowMenu.label = "" # Put Viewport menuitem un
exts."omni.rtx.window.settings".window_menu = "Window" # Where to put the render settings menuitem
exts."omni.usd".locking.onClose = false # reduce time it takes to close/create stage
renderer.asyncInit = true # Don't block while renderer inits
renderer.scenePartitioning.enabled = true # Enable before RTX initialization so env-root partitions are honored
renderer.gpuEnumeration.glInterop.enabled = false # Improves startup speed.
rendergraph.mgpu.backend = "copyQueue" # In MGPU configurations, This setting can be removed if IOMMU is disabled for better performance, copyQueue improves stability and performance when IOMMU is enabled
rtx-transient.dlssg.enabled = false # DLSSG frame generation is not compatible with synthetic data generation
Expand Down
1 change: 0 additions & 1 deletion apps/isaaclab.python.rendering.kit
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ app.version = "3.0.0"
app.useFabricSceneDelegate = true
# Temporary, should be enabled by default in Kit soon
rtx.hydra.readTransformsFromFabricInRenderDelegate = true
renderer.scenePartitioning.enabled = true # Enable before RTX initialization so env-root partitions are honored

# Disable print outs on extension startup information
# this only disables the app print_and_log function
Expand Down
1 change: 0 additions & 1 deletion apps/isaaclab.python.xr.openxr.headless.kit
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ app.version = "3.0.0"
app.useFabricSceneDelegate = true
# Temporary, should be enabled by default in Kit soon
rtx.hydra.readTransformsFromFabricInRenderDelegate = true
renderer.scenePartitioning.enabled = true # Enable before RTX initialization so env-root partitions are honored

# xr optimizations
xr.skipInputDeviceUSDWrites = true
Expand Down
1 change: 0 additions & 1 deletion apps/isaaclab.python.xr.openxr.kit
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@ renderer.gpuEnumeration.glInterop.enabled = true # Allow Kit XR OpenXR to render
app.useFabricSceneDelegate = true
# Temporary, should be enabled by default in Kit soon
rtx.hydra.readTransformsFromFabricInRenderDelegate = true
renderer.scenePartitioning.enabled = true # Enable before RTX initialization so env-root partitions are honored

# xr optimizations
xr.skipInputDeviceUSDWrites = true
Expand Down
10 changes: 1 addition & 9 deletions source/isaaclab/isaaclab/envs/utils/camera_view.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
import torch
import warp as wp

from pxr import Sdf, UsdGeom
from pxr import UsdGeom

import isaaclab.sim as sim_utils
from isaaclab.sensors.camera import Camera, CameraCfg
Expand Down Expand Up @@ -133,14 +133,6 @@ def create_visualizer_camera(
for path in generated_paths:
if len(sim_utils.find_matching_prims(path)) == 0:
spawn.func(path, spawn, translation=(0.0, 0.0, 0.0), orientation=(0.0, 0.0, 0.0, 1.0))

stage = sim_utils.get_current_stage()
for path in generated_paths:
cam_prim = stage.GetPrimAtPath(path)
attr = cam_prim.GetAttribute("omni:scenePartition")
if not attr.IsValid():
attr = cam_prim.CreateAttribute("omni:scenePartition", Sdf.ValueTypeNames.Token)
attr.Set(path.split("/")[-2])
cfg = CameraCfg(
prim_path=f"/World/envs/env_.*/{camera_name}",
update_period=0.0,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
import warp as wp
from packaging import version

from pxr import Sdf, Usd, UsdGeom
from pxr import Sdf

from isaaclab.app.settings_manager import get_settings_manager
from isaaclab.renderers import BaseRenderer, RenderBufferKind, RenderBufferSpec
Expand Down Expand Up @@ -178,40 +178,10 @@ def supported_output_types(self) -> dict[RenderBufferKind, RenderBufferSpec]:

return specs

def prepare_stage(self, stage: Usd.Stage, num_envs: int) -> None:
"""Author per-env ``omni:scenePartition`` attributes for RTX cull-by-env rendering.

For each ``/World/envs/env_{i}`` root, writes the inheriting primvar
``primvars:omni:scenePartition`` (token ``env_{i}``) on the root and the matching
non-primvar ``omni:scenePartition`` token on every :class:`UsdGeom.Camera` descendant.
RTX honors primvar inheritance, so the env-root primvar propagates to all descendant
geometry and isolates each env's render tile.
def prepare_stage(self, stage: Any, num_envs: int) -> None:
"""No-op for Isaac RTX - uses USD scene directly without export.
See :meth:`~isaaclab.renderers.base_renderer.BaseRenderer.prepare_stage`."""
root_layer = stage.GetRootLayer()
token_type = Sdf.ValueTypeNames.Token
with Sdf.ChangeBlock():
for env_idx in range(num_envs):
env_prim = stage.GetPrimAtPath(f"/World/envs/env_{env_idx}")
if not env_prim.IsValid():
continue
token = f"env_{env_idx}"
for prim in Usd.PrimRange(env_prim):
if prim == env_prim:
attr_path = prim.GetPath().AppendProperty("primvars:omni:scenePartition")
elif prim.IsA(UsdGeom.Camera):
attr_path = prim.GetPath().AppendProperty("omni:scenePartition")
else:
continue
# Idempotent: a different renderer backend sharing this stage may have already
# authored this attribute. Re-creating an existing spec raises, so only create
# it when absent, then (re)assign the per-env token either way.
attr_spec = root_layer.GetAttributeAtPath(attr_path)
if attr_spec is None:
Sdf.JustCreatePrimAttributeInLayer(
root_layer, attr_path, token_type, Sdf.VariabilityUniform, True
)
attr_spec = root_layer.GetAttributeAtPath(attr_path)
attr_spec.default = token
pass

def create_render_data(self, spec: CameraRenderSpec) -> IsaacRtxRenderData:
"""Create render product and annotators for the tiled camera.
Expand Down

This file was deleted.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading