背景
感知运控方向(#30,lidar/raycast 评估)之外,视觉 obs(camera → pixel obs → policy)是另一条需要验证的 sim 能力线。motrixsim 0.10.1.dev 已提供批量渲染入口:
RenderApp.launch(model, batch=N, render_offset, render_settings):多 world 批量渲染
RenderCamera.capture() -> CaptureTask:异步取图,CaptureTask.take_image() 取回 Image
RenderSettings:quality/performance 预设、share_lights_between_envs、shadow/ssao 等开关
create_camera_viewport(camera, layout, sim_world_index):按 world index 建视口
现状:MotrixLab 侧渲染只用于视频录制(MotrixSimRenderer offscreen system camera RGB,motrix_env_motrixsim/renderer.py:21),在环 egocentric 相机 obs 管线不存在;且 TorchEnv 仅支持 CPU 仿真(torch_env.py:119),渲染通道与训练循环的集成方式未验证。
目标
以 vision-based cartpole(现成 state-based cartpole 的像素版)为载体,对 motrixsim batch render 做测试评估:
- 功能正确性:批量 env 下 per-env 相机图像与对应 world 一一对应(无串图/偏移错误)
- 吞吐与延迟:capture→CPU/GPU tensor 的端到端延迟;batch 规模(16/64/256/…)与分辨率(48×64 / 90×160 / …)扩展曲线;异步 capture 与物理 step 的重叠度
- 集成方式:渲染服务进程与训练循环的数据通道(
sync() 语义、共享内存/拷贝路径、obs 摊平进 TorchObs)
- 训练可行性:像素 obs 下的 cartpole 是否可学(前置:FastSAC 目前无 CNN encoder,见下方范围说明)
工作分解
范围说明
本 issue 优先完成"渲染管线评估 + env 注册";若评估发现吞吐达标,像素端到端训练(需要给 FastSAC 补 CNN encoder)另开 issue。
参考
背景
感知运控方向(#30,lidar/raycast 评估)之外,视觉 obs(camera → pixel obs → policy)是另一条需要验证的 sim 能力线。motrixsim 0.10.1.dev 已提供批量渲染入口:
RenderApp.launch(model, batch=N, render_offset, render_settings):多 world 批量渲染RenderCamera.capture() -> CaptureTask:异步取图,CaptureTask.take_image()取回ImageRenderSettings:quality/performance 预设、share_lights_between_envs、shadow/ssao 等开关create_camera_viewport(camera, layout, sim_world_index):按 world index 建视口现状:MotrixLab 侧渲染只用于视频录制(
MotrixSimRendereroffscreen system camera RGB,motrix_env_motrixsim/renderer.py:21),在环 egocentric 相机 obs 管线不存在;且TorchEnv仅支持 CPU 仿真(torch_env.py:119),渲染通道与训练循环的集成方式未验证。目标
以 vision-based cartpole(现成 state-based cartpole 的像素版)为载体,对 motrixsim batch render 做测试评估:
sync()语义、共享内存/拷贝路径、obs 摊平进 TorchObs)工作分解
update_period风格的逐 env 刷新 + 过期帧缓存,参照 InstinctMJ 的 sensor 更新模式)basic/cartpole的 pixels 变体,保持与 state 版同 reward/termination 以便对照)范围说明
本 issue 优先完成"渲染管线评估 + env 注册";若评估发现吞吐达标,像素端到端训练(需要给 FastSAC 补 CNN encoder)另开 issue。
参考
NoisyGroupedRayCasterCamera(mjlab,CC BY-NC 4.0,仅作设计参照)