Merge pull request #2771 from sgillen/master

Bugfix for camera_adjust and move_and_look_at in locomotion environments
This commit is contained in:
erwincoumans 2020-04-25 20:32:18 -07:00 committed by GitHub
commit 74bae26692
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 4 deletions

View File

@ -26,7 +26,7 @@ class MJCFBaseBulletEnv(gym.Env):
self.scene = None self.scene = None
self.physicsClientId = -1 self.physicsClientId = -1
self.ownsPhysicsClient = 0 self.ownsPhysicsClient = 0
self.camera = Camera() self.camera = Camera(self)
self.isRender = render self.isRender = render
self.robot = robot self.robot = robot
self.seed() self.seed()
@ -160,11 +160,12 @@ class MJCFBaseBulletEnv(gym.Env):
class Camera: class Camera:
def __init__(self): def __init__(self, env):
self.env = env
pass pass
def move_and_look_at(self, i, j, k, x, y, z): def move_and_look_at(self, i, j, k, x, y, z):
lookat = [x, y, z] lookat = [x, y, z]
distance = 10 distance = 10
yaw = 10 yaw = 10
self._p.resetDebugVisualizerCamera(distance, yaw, -20, lookat) self.env._p.resetDebugVisualizerCamera(distance, yaw, -20, lookat)

View File

@ -125,7 +125,7 @@ class WalkerBaseBulletEnv(MJCFBaseBulletEnv):
return state, sum(self.rewards), bool(done), {} return state, sum(self.rewards), bool(done), {}
def camera_adjust(self): def camera_adjust(self):
x, y, z = self.body_xyz x, y, z = self.robot.body_xyz
self.camera_x = 0.98 * self.camera_x + (1 - 0.98) * x self.camera_x = 0.98 * self.camera_x + (1 - 0.98) * x
self.camera.move_and_look_at(self.camera_x, y - 2.0, 1.4, x, y, 1.0) self.camera.move_and_look_at(self.camera_x, y - 2.0, 1.4, x, y, 1.0)