Rendering

Each Meta-World environment uses Gymnasium to handle the rendering functions following the gymnasium.MujocoEnv interface.

Upon environment creation a user can select a render mode in ('rgb_array', 'human').

For example:

import metaworld
import random

env_name = '' # Pick an environment name

render_mode = '' # set a render mode

env = gym.make('Meta-World/MT1', env_name=env_name, render_mode=render_mode)

obs = env.reset()  # Reset environment
a = env.action_space.sample()  # Sample an action
obs, reward, terminate, truncate, info = env.step(a)  # Step the environment with the sampled random action

Render from a specific camera

In addition to the base render functions, Meta-World supports multiple camera positions.

camera_name = '' # one of: ['corner', 'corner2', 'corner3', 'corner4', 'topview', 'behindGripper', 'gripperPOV']

env = gym.make(env_name=env_name, render_mode=render_mode, camera_name=camera_name)

The ID of the camera (from Mujoco) can also be passed.


camera_id = '' # this is an integer that represents the camera ID from Mujoco

env = gym.make(env_name=env_name, render_mode=render_mode, camera_id=camera_id)

Camera views may be rotated in this documentation for optimal presentation.

corner or id: 1

Camera Name Corner

corner2 or id: 2

Camera Name Corner2

corner3 or id: 3

Camera Name Corner3

topview or id: 0

Camera Name Topview

behindGripper or id: 4

Camera Name BehindGripper

gripperPOV or id: 5

Camera Name GripperPOV