From edafc6accd37901d55880e6c38310b73c3deb123 Mon Sep 17 00:00:00 2001 From: iZuno-K Date: Thu, 28 Nov 2019 19:31:14 +0900 Subject: [PATCH 1/4] [add] test codes to debug contact force rendering. --- test_codes/debug_render.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 test_codes/debug_render.py diff --git a/test_codes/debug_render.py b/test_codes/debug_render.py new file mode 100644 index 00000000..c394b2c5 --- /dev/null +++ b/test_codes/debug_render.py @@ -0,0 +1,14 @@ +import gym + +if __name__ == '__main__': + env = gym.make('Walker2d-v2') + env.reset() + env.render() + imgs = [] + fps = env.metadata.get('video.frames_per_second') + dt = env.dt + print(fps, dt) + for i in range(1000): + env.step(env.action_space.sample()) + # env.env.viewer.vopt.flags[mujoco_py.const.VIS_CONTACTFORCE] = 1 + env.render() From ab026c1ff8df54841a549cfd39374b312e8f00dd Mon Sep 17 00:00:00 2001 From: iZuno-K Date: Thu, 28 Nov 2019 19:29:07 +0900 Subject: [PATCH 2/4] [bug fix] use const.VIS_CONTACTFORCE rather than specify the certain number. (10, 11 were used at mater branch. But they are not equal to const.VIS_CONTACTFORCE==14) --- mujoco_py/mjviewer.py | 5 ++--- test_codes/debug_render.py | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/mujoco_py/mjviewer.py b/mujoco_py/mjviewer.py index cf9ed6e3..08b9331c 100644 --- a/mujoco_py/mjviewer.py +++ b/mujoco_py/mjviewer.py @@ -11,7 +11,6 @@ from multiprocessing import Process, Queue from threading import Lock - class MjViewerBasic(cymj.MjRenderContextWindow): """ A simple display GUI showing the scene of an :class:`.MjSim` with a mouse-movable camera. @@ -252,7 +251,7 @@ def _create_full_overlay(self): self.add_overlay(const.GRID_TOPLEFT, "Switch camera (#cams = %d)" % (self._ncam + 1), "[Tab] (camera ID = %d)" % self.cam.fixedcamid) self.add_overlay(const.GRID_TOPLEFT, "[C]ontact forces", "Off" if self.vopt.flags[ - 10] == 1 else "On") + const.VIS_CONTACTFORCE] == 0 else "On") self.add_overlay( const.GRID_TOPLEFT, "Referenc[e] frames", "Off" if self.vopt.frame == 1 else "On") self.add_overlay(const.GRID_TOPLEFT, @@ -340,7 +339,7 @@ def key_callback(self, window, key, scancode, action, mods): self._run_speed *= 2.0 elif key == glfw.KEY_C: # Displays contact forces. vopt = self.vopt - vopt.flags[10] = vopt.flags[11] = not vopt.flags[10] + vopt.flags[const.VIS_CONTACTFORCE] = not vopt.flags[const.VIS_CONTACTFORCE] elif key == glfw.KEY_D: # turn off / turn on rendering every frame. self._render_every_frame = not self._render_every_frame elif key == glfw.KEY_E: diff --git a/test_codes/debug_render.py b/test_codes/debug_render.py index c394b2c5..a6da2323 100644 --- a/test_codes/debug_render.py +++ b/test_codes/debug_render.py @@ -8,7 +8,7 @@ fps = env.metadata.get('video.frames_per_second') dt = env.dt print(fps, dt) - for i in range(1000): + for i in range(2000): env.step(env.action_space.sample()) # env.env.viewer.vopt.flags[mujoco_py.const.VIS_CONTACTFORCE] = 1 env.render() From 024555e4b1b41bfb4c29889dbb3be275884a4690 Mon Sep 17 00:00:00 2001 From: iZuno-K Date: Thu, 28 Nov 2019 19:22:56 +0900 Subject: [PATCH 3/4] [mod] remove test codes. --- test_codes/debug_render.py | 14 -------------- 1 file changed, 14 deletions(-) delete mode 100644 test_codes/debug_render.py diff --git a/test_codes/debug_render.py b/test_codes/debug_render.py deleted file mode 100644 index a6da2323..00000000 --- a/test_codes/debug_render.py +++ /dev/null @@ -1,14 +0,0 @@ -import gym - -if __name__ == '__main__': - env = gym.make('Walker2d-v2') - env.reset() - env.render() - imgs = [] - fps = env.metadata.get('video.frames_per_second') - dt = env.dt - print(fps, dt) - for i in range(2000): - env.step(env.action_space.sample()) - # env.env.viewer.vopt.flags[mujoco_py.const.VIS_CONTACTFORCE] = 1 - env.render() From 4d89b7661f65f6ef561ad69648aecdf46520bb0d Mon Sep 17 00:00:00 2001 From: iZuno-K Date: Thu, 28 Nov 2019 19:36:17 +0900 Subject: [PATCH 4/4] [mod] remove a redundant line --- mujoco_py/mjviewer.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/mujoco_py/mjviewer.py b/mujoco_py/mjviewer.py index 08b9331c..234e057b 100644 --- a/mujoco_py/mjviewer.py +++ b/mujoco_py/mjviewer.py @@ -338,8 +338,7 @@ def key_callback(self, window, key, scancode, action, mods): elif key == glfw.KEY_F: # Speeds up simulation. self._run_speed *= 2.0 elif key == glfw.KEY_C: # Displays contact forces. - vopt = self.vopt - vopt.flags[const.VIS_CONTACTFORCE] = not vopt.flags[const.VIS_CONTACTFORCE] + self.vopt.flags[const.VIS_CONTACTFORCE] = not self.vopt.flags[const.VIS_CONTACTFORCE] elif key == glfw.KEY_D: # turn off / turn on rendering every frame. self._render_every_frame = not self._render_every_frame elif key == glfw.KEY_E: