diff --git a/interface/src/avatar/Avatar.cpp b/interface/src/avatar/Avatar.cpp index 47af6d586c..b3b4793b39 100755 --- a/interface/src/avatar/Avatar.cpp +++ b/interface/src/avatar/Avatar.cpp @@ -194,7 +194,9 @@ void Avatar::simulate(float deltaTime, Transmitter* transmitter) { _skeletonModel.simulate(deltaTime); _head.setBodyRotation(glm::vec3(_bodyPitch, _bodyYaw, _bodyRoll)); glm::vec3 headPosition; - _skeletonModel.getHeadPosition(headPosition); + if (!_skeletonModel.getHeadPosition(headPosition)) { + headPosition = _position; + } _head.setPosition(headPosition); _head.setScale(_scale); _head.setSkinColor(glm::vec3(SKIN_COLOR[0], SKIN_COLOR[1], SKIN_COLOR[2])); diff --git a/interface/src/avatar/Head.cpp b/interface/src/avatar/Head.cpp index 8f285cfd77..5471f8554a 100644 --- a/interface/src/avatar/Head.cpp +++ b/interface/src/avatar/Head.cpp @@ -222,8 +222,9 @@ void Head::simulate(float deltaTime, bool isMine) { calculateGeometry(); // the blend face may have custom eye meshes - _faceModel.getEyePositions(_leftEyePosition, _rightEyePosition); - + if (!_faceModel.getEyePositions(_leftEyePosition, _rightEyePosition)) { + _leftEyePosition = _rightEyePosition = getPosition(); + } } void Head::calculateGeometry() { diff --git a/interface/src/avatar/MyAvatar.cpp b/interface/src/avatar/MyAvatar.cpp index 91b88e427c..e7dba4a4c7 100644 --- a/interface/src/avatar/MyAvatar.cpp +++ b/interface/src/avatar/MyAvatar.cpp @@ -282,7 +282,9 @@ void MyAvatar::simulate(float deltaTime, Transmitter* transmitter) { _skeletonModel.simulate(deltaTime); _head.setBodyRotation(glm::vec3(_bodyPitch, _bodyYaw, _bodyRoll)); glm::vec3 headPosition; - _skeletonModel.getHeadPosition(headPosition); + if (!_skeletonModel.getHeadPosition(headPosition)) { + headPosition = _position; + } _head.setPosition(headPosition); _head.setScale(_scale); _head.setSkinColor(glm::vec3(SKIN_COLOR[0], SKIN_COLOR[1], SKIN_COLOR[2]));