Merge remote-tracking branch 'bp/master'

This commit is contained in:
Erwin Coumans
2018-01-26 17:36:45 -08:00
7 changed files with 30 additions and 14 deletions

View File

@@ -1,4 +1,10 @@
from gym.envs.registration import registry, register, make, spec import gym
from gym.envs.registration import registry, make, spec
def register(id,*args,**kvargs):
if id in  registry.env_specs:
return
else:
return gym.envs.registration.register(id,*args,**kvargs)
# ------------bullet------------- # ------------bullet-------------

View File

@@ -275,3 +275,11 @@ class KukaGymEnv(gym.Env):
#print("reward") #print("reward")
#print(reward) #print(reward)
return reward return reward
def reset(self):
"""Resets the state of the environment and returns an initial observation.
Returns: observation (object): the initial observation of the
space.
"""
return self._reset()

View File

@@ -41,7 +41,7 @@ class ReacherBulletEnv(MJCFBaseBulletEnv):
class PusherBulletEnv(MJCFBaseBulletEnv): class PusherBulletEnv(MJCFBaseBulletEnv):
def __init__(self): def __init__(self):
self.robot = Pusher() self.robot = Pusher()
BaseBulletEnv.__init__(self, self.robot) MJCFBaseBulletEnv.__init__(self, self.robot)
def create_single_player_scene(self): def create_single_player_scene(self):
return SingleRobotEmptyScene(gravity=9.81, timestep=0.0020, frame_skip=5) return SingleRobotEmptyScene(gravity=9.81, timestep=0.0020, frame_skip=5)
@@ -95,7 +95,7 @@ class PusherBulletEnv(MJCFBaseBulletEnv):
class StrikerBulletEnv(MJCFBaseBulletEnv): class StrikerBulletEnv(MJCFBaseBulletEnv):
def __init__(self): def __init__(self):
self.robot = Striker() self.robot = Striker()
BaseBulletEnv.__init__(self, self.robot) MJCFBaseBulletEnv.__init__(self, self.robot)
self._striked = False self._striked = False
self._min_strike_dist = np.inf self._min_strike_dist = np.inf
self.strike_threshold = 0.1 self.strike_threshold = 0.1
@@ -171,7 +171,7 @@ class StrikerBulletEnv(MJCFBaseBulletEnv):
class ThrowerBulletEnv(MJCFBaseBulletEnv): class ThrowerBulletEnv(MJCFBaseBulletEnv):
def __init__(self): def __init__(self):
self.robot = Thrower() self.robot = Thrower()
BaseBulletEnv.__init__(self, self.robot) MJCFBaseBulletEnv.__init__(self, self.robot)
def create_single_player_scene(self): def create_single_player_scene(self):
return SingleRobotEmptyScene(gravity=0.0, timestep=0.0020, frame_skip=5) return SingleRobotEmptyScene(gravity=0.0, timestep=0.0020, frame_skip=5)

View File

@@ -261,13 +261,11 @@ void btSimulationIslandManager::buildIslands(btDispatcher* dispatcher,btCollisio
btAssert((colObj0->getIslandTag() == islandId) || (colObj0->getIslandTag() == -1)); btAssert((colObj0->getIslandTag() == islandId) || (colObj0->getIslandTag() == -1));
if (colObj0->getIslandTag() == islandId) if (colObj0->getIslandTag() == islandId)
{ {
if (colObj0->getActivationState()== ACTIVE_TAG) if (colObj0->getActivationState()== ACTIVE_TAG ||
{ colObj0->getActivationState()== DISABLE_DEACTIVATION)
allSleeping = false;
}
if (colObj0->getActivationState()== DISABLE_DEACTIVATION)
{ {
allSleeping = false; allSleeping = false;
break;
} }
} }
} }

View File

@@ -49,6 +49,7 @@ public:
virtual void setMargin(btScalar collisionMargin) virtual void setMargin(btScalar collisionMargin)
{ {
//don't override the margin for capsules, their entire radius == margin //don't override the margin for capsules, their entire radius == margin
(void)collisionMargin;
} }
virtual void getAabb (const btTransform& t, btVector3& aabbMin, btVector3& aabbMax) const virtual void getAabb (const btTransform& t, btVector3& aabbMin, btVector3& aabbMax) const

View File

@@ -314,13 +314,11 @@ void btSimulationIslandManagerMt::buildIslands( btDispatcher* dispatcher, btColl
btAssert((colObj0->getIslandTag() == islandId) || (colObj0->getIslandTag() == -1)); btAssert((colObj0->getIslandTag() == islandId) || (colObj0->getIslandTag() == -1));
if (colObj0->getIslandTag() == islandId) if (colObj0->getIslandTag() == islandId)
{ {
if (colObj0->getActivationState()== ACTIVE_TAG) if (colObj0->getActivationState()== ACTIVE_TAG ||
{ colObj0->getActivationState()== DISABLE_DEACTIVATION)
allSleeping = false;
}
if (colObj0->getActivationState()== DISABLE_DEACTIVATION)
{ {
allSleeping = false; allSleeping = false;
break;
} }
} }
} }

View File

@@ -72,6 +72,8 @@ SIMD_FORCE_INLINE void btMutexLock( btSpinMutex* mutex )
{ {
#if BT_THREADSAFE #if BT_THREADSAFE
mutex->lock(); mutex->lock();
#else
(void)mutex;
#endif // #if BT_THREADSAFE #endif // #if BT_THREADSAFE
} }
@@ -79,6 +81,8 @@ SIMD_FORCE_INLINE void btMutexUnlock( btSpinMutex* mutex )
{ {
#if BT_THREADSAFE #if BT_THREADSAFE
mutex->unlock(); mutex->unlock();
#else
(void)mutex;
#endif // #if BT_THREADSAFE #endif // #if BT_THREADSAFE
} }
@@ -87,6 +91,7 @@ SIMD_FORCE_INLINE bool btMutexTryLock( btSpinMutex* mutex )
#if BT_THREADSAFE #if BT_THREADSAFE
return mutex->tryLock(); return mutex->tryLock();
#else #else
(void)mutex;
return true; return true;
#endif // #if BT_THREADSAFE #endif // #if BT_THREADSAFE
} }