Replaces manual H264/TCP stereo streaming with NVIDIA CloudXR for
higher-quality stereoscopic rendering and lower latency.
Changes:
- teleop_xr_agent.py: add --cloudxr flag (enables Isaac Sim XR mode,
disables manual StreamingManager)
- deps/cloudxr/: NVIDIA CloudXR.js SDK (Early Access) with Isaac Lab
teleop React web client
- deps/cloudxr/Dockerfile.wss.proxy: HAProxy WSS proxy for PICO 4 Ultra
HTTPS mode (routes wss://48322 → ws://49100)
- deps/cloudxr/isaac/webpack.dev.js: disable file watching to avoid
EMFILE errors with large node_modules
- deps/cloudxr/INSTALL.md: full setup guide
Usage:
# Start CloudXR Runtime + Isaac Lab
cd ~/IsaacLab && ./docker/container.py start \
--files docker-compose.cloudxr-runtime.patch.yaml \
--env-file .env.cloudxr-runtime
# Run teleop with CloudXR
~/IsaacLab/isaaclab.sh -p teleop_xr_agent.py \
--task Isaac-MindRobot-2i-DualArm-IK-Abs-v0 --cloudxr
# Serve web client
cd deps/cloudxr/isaac && npm run dev-server:https
31 lines
928 B
JSON
31 lines
928 B
JSON
{
|
|
"name": "cloudxr-simple-example",
|
|
"version": "6.0.0-beta",
|
|
"private": true,
|
|
"description": "CloudXR.js WebGL example application",
|
|
"author": "NVIDIA Corporation",
|
|
"license": "SEE LICENSE IN LICENSE",
|
|
"keywords": [],
|
|
"scripts": {
|
|
"build": "webpack --config ./webpack.prod.js",
|
|
"dev": "webpack --config ./webpack.dev.js",
|
|
"dev-server": "webpack serve --config ./webpack.dev.js --no-open",
|
|
"dev-server:https": "HTTPS=true webpack serve --config ./webpack.dev.js --no-open",
|
|
"clean": "rimraf build"
|
|
},
|
|
"dependencies": {
|
|
"@nvidia/cloudxr": "dev"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^22.13.14",
|
|
"@types/webxr": "^0.5.22",
|
|
"copy-webpack-plugin": "^13.0.0",
|
|
"gl-matrix": "^3.4.3",
|
|
"html-webpack-plugin": "^5.6.3",
|
|
"rimraf": "^5.0.5",
|
|
"ts-loader": "^9.5.1",
|
|
"typescript": "^5.8.2",
|
|
"webpack-dev-server": "^5.2.1",
|
|
"webpack-cli": "^6.0.1"
|
|
}
|
|
} |