.. _custom_sim: Customize Env =============================== .. code-block:: bash python3 tele.py --env --tele The teleop script takes in two configurations: one for environment and one for teleoperation. The teleoperation config is tightly coupled with robot configurations -- each robot has its own teleoperation config. To use **the same robot across different environments**, you simply need to create a new environment in ManiSkill3 and modify the **environment config** accordingly. .. dropdown:: Why this design? :open: It decouples robot control logic from the task/environment logic, so that in real-world teleoperation, the same robot and control interface can be reused consistently, while only the environment-specific settings need to be changed. Environment Config --------------------------- .. code-block:: yaml # these definitions follow ManiSkill3 definition. env_name: str = "PickCube-v1" # name of the environment robot_uids: str | None = None # name of the robot ignore_terminations: bool = True # ignore the terminations for all mani_skill envs, you can skip it. obs_mode: str = "state" action_mode: str | None = None render_mode: str = "rgb_array" sim_backend: str = "cpu" control_mode: str = "pd_pos_control" sim_config: NewSimConfig = field(default_factory=NewSimConfig) # these are teleoperation related definations. root_pose: PoseConfig = PoseConfig() # Root pose of VR display - changes your VR view goal_site: PoseConfig = PoseConfig(p=[0.0, 0.0, 1.0]) # Pose of green sphere for recording status visualization # If the environment has a goal site defined in ManiSkill3 Env (e.g. goal position for pick up task), # it will use that goal site pose instead of this one success_condition: bool = True # whether have success condition or not auto_record_success: bool = False # If True, recording stops automatically when success condition is met auto_record_success_threshold: int = 20 # Control steps to wait before stopping recording after success # For example, at 10 Hz control frequency, recording stops 2 seconds after success You can preview the environment by provided tools:: python3 tools view See example configs in `vr_teleop/configs/examples `_.