Skip to content
Draft
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 apps/isaaclab.python.xr.openxr.headless.kit
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ 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
rtx.scenePartitioning.showAllPartitionsByDefault = true

# xr optimizations
xr.skipInputDeviceUSDWrites = true
Expand Down
1 change: 1 addition & 0 deletions apps/isaaclab.python.xr.openxr.kit
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ 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
rtx.scenePartitioning.showAllPartitionsByDefault = true

# xr optimizations
xr.skipInputDeviceUSDWrites = true
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
Fixed
^^^^^

* Fixed the OpenXR experiences to expose content from all Isaac RTX scene
partitions when launched directly.
28 changes: 28 additions & 0 deletions source/isaaclab/test/app/test_experience_files.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,25 @@ def _kit_dependencies(experience: str) -> set[str]:
return dependencies


def _kit_setting_values(experience: str, setting: str) -> list[str]:
"""Collect values assigned to a setting in an experience file's settings sections."""
values: list[str] = []
in_settings = False

for line in (APPS_DIR / experience).read_text(encoding="utf-8").splitlines():
section = _SECTION_RE.match(line)
if section is not None:
in_settings = section.group("name").strip() == "settings"
continue
if not in_settings:
continue
key, separator, value = line.partition("=")
if separator and key.strip() == setting:
values.append(value.partition("#")[0].strip())

return values


@pytest.mark.parametrize("experience", ["isaaclab.python.kit", "isaaclab.python.headless.kit"])
def test_base_experiences_enable_native_storage(experience: str):
"""Test the base experiences load the extension that applies ``ISAACSIM_ASSET_ROOT``."""
Expand All @@ -55,3 +74,12 @@ def test_base_experiences_enable_native_storage(experience: str):
def test_derived_experiences_inherit_native_storage(experience: str, base: str):
"""Test the derived experiences inherit native storage from a base experience."""
assert base in _kit_dependencies(experience)


@pytest.mark.parametrize(
"experience",
["isaaclab.python.xr.openxr.kit", "isaaclab.python.xr.openxr.headless.kit"],
)
def test_xr_experiences_show_all_scene_partitions(experience: str):
"""Test each XR experience configures its spectator view before RTX starts."""
assert _kit_setting_values(experience, "rtx.scenePartitioning.showAllPartitionsByDefault") == ["true"]
Loading