Fix excluding saccades when doing eye tracking

This commit is contained in:
David Rowe 2015-08-06 17:20:03 -07:00
parent 551c00dc23
commit 427b8b973c

View file

@ -131,7 +131,9 @@ void Head::simulate(float deltaTime, bool isMine, bool billboard) {
setTorsoTwist(currentTwist + (getFinalYaw() * BODY_FOLLOW_HEAD_FACTOR - currentTwist) * BODY_FOLLOW_HEAD_YAW_RATE);
}
if (!(_isFaceTrackerConnected || _isEyeTrackerConnected || billboard)) {
if (!(_isFaceTrackerConnected || billboard)) {
if (!_isEyeTrackerConnected) {
// Update eye saccades
const float AVERAGE_MICROSACCADE_INTERVAL = 1.0f;
const float AVERAGE_SACCADE_INTERVAL = 6.0f;
@ -145,6 +147,9 @@ void Head::simulate(float deltaTime, bool isMine, bool billboard) {
_saccadeTarget = SACCADE_MAGNITUDE * randVector();
}
_saccade += (_saccadeTarget - _saccade) * pow(0.5f, NOMINAL_FRAME_RATE * deltaTime);
} else {
_saccade = glm::vec3();
}
// Detect transition from talking to not; force blink after that and a delay
bool forceBlink = false;