diff --git a/source/isaaclab_ov/changelog.d/enable-synchronous-texture-streaming.rst b/source/isaaclab_ov/changelog.d/enable-synchronous-texture-streaming.rst new file mode 100644 index 000000000000..3dff66aef22f --- /dev/null +++ b/source/isaaclab_ov/changelog.d/enable-synchronous-texture-streaming.rst @@ -0,0 +1,7 @@ +Changed +^^^^^^^ + +* Enabled synchronous texture streaming on the internal OVRTX ``RendererConfig`` in + :class:`~isaaclab_ov.renderers.ovrtx_renderer.OVRTXRenderer` via + ``texture_streaming_mode=TextureStreamingMode.SYNCHRONOUS`` to improve cross-run + render determinism. Requires ``ovrtx>=0.4.1``. diff --git a/source/isaaclab_ov/isaaclab_ov/renderers/ovrtx_renderer.py b/source/isaaclab_ov/isaaclab_ov/renderers/ovrtx_renderer.py index 0024bd78ff32..deeb44441df0 100644 --- a/source/isaaclab_ov/isaaclab_ov/renderers/ovrtx_renderer.py +++ b/source/isaaclab_ov/isaaclab_ov/renderers/ovrtx_renderer.py @@ -63,6 +63,7 @@ Renderer, RendererConfig, Semantic, + TextureStreamingMode, ) except ModuleNotFoundError as exc: if exc.name != "ovrtx": @@ -71,7 +72,7 @@ "The OVRTX renderer requires the optional 'ovrtx' runtime wheel, which is not installed. " "Run your command with: uv run --extra ovrtx " "(or, manually: python -m pip install --extra-index-url https://pypi.nvidia.com " - "'ovrtx>=0.4.0,<0.5.0')." + "'ovrtx>=0.4.1,<0.5.0')." ) from exc from isaaclab.cloner.clone_plan import ClonePlan @@ -399,6 +400,7 @@ def __init__(self, cfg: OVRTXRendererCfg): log_level=self.cfg.log_level, read_gpu_transforms=_read_gpu_transforms_enabled(), keep_system_alive=True, + texture_streaming_mode=TextureStreamingMode.SYNCHRONOUS, ) self._renderer = Renderer(OVRTX_CONFIG) if not self._renderer: