From 418271e06bba44654e048a303688dfdee19a1018 Mon Sep 17 00:00:00 2001 From: Andrew Meadows Date: Wed, 14 Sep 2016 11:49:00 -0700 Subject: [PATCH] ghost tracks the collision group --- libraries/physics/src/CharacterController.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/libraries/physics/src/CharacterController.cpp b/libraries/physics/src/CharacterController.cpp index 81772c59b3..7cab21e7e2 100644 --- a/libraries/physics/src/CharacterController.cpp +++ b/libraries/physics/src/CharacterController.cpp @@ -124,9 +124,7 @@ void CharacterController::setDynamicsWorld(btDynamicsWorld* world) { _ghost.setCollisionShape(_rigidBody->getCollisionShape()); // KINEMATIC_CONTROLLER_HACK } // KINEMATIC_CONTROLLER_HACK - int16_t group = BULLET_COLLISION_GROUP_MY_AVATAR; - int16_t mask = BULLET_COLLISION_MASK_MY_AVATAR & (~ group); - _ghost.setCollisionGroupAndMask(group, mask); + _ghost.setCollisionGroupAndMask(_collisionGroup, BULLET_COLLISION_MASK_MY_AVATAR & (~ _collisionGroup)); _ghost.setCollisionWorld(_dynamicsWorld); _ghost.setDistanceToFeet(_radius + _halfHeight); _ghost.setMaxStepHeight(0.75f * (_radius + _halfHeight)); // HACK @@ -355,6 +353,7 @@ void CharacterController::setCollisionGroup(int16_t group) { if (_collisionGroup != group) { _collisionGroup = group; _pendingFlags |= PENDING_FLAG_UPDATE_COLLISION_GROUP; + _ghost.setCollisionGroupAndMask(_collisionGroup, BULLET_COLLISION_MASK_MY_AVATAR & (~ _collisionGroup)); } }