Tweaks to improve mouth and brow appearance when just audio driven

This commit is contained in:
Philip Rosedale 2014-05-08 01:06:26 -07:00
parent 2c6c57eec2
commit 4185faa82a

View file

@ -106,15 +106,10 @@ void Head::simulate(float deltaTime, bool isMine, bool billboard) {
const float BROW_LIFT_THRESHOLD = 100.0f; const float BROW_LIFT_THRESHOLD = 100.0f;
if (_audioAttack > BROW_LIFT_THRESHOLD) { if (_audioAttack > BROW_LIFT_THRESHOLD) {
_browAudioLift += sqrtf(_audioAttack) * 0.00005f; _browAudioLift += sqrtf(_audioAttack) * 0.01f;
} }
_browAudioLift = glm::clamp(_browAudioLift *= 0.7f, 0.0f, 1.0f);
const float CLAMP = 0.01f; qDebug() << _browAudioLift;
if (_browAudioLift > CLAMP) {
_browAudioLift = CLAMP;
}
_browAudioLift *= 0.7f;
const float BLINK_SPEED = 10.0f; const float BLINK_SPEED = 10.0f;
const float FULLY_OPEN = 0.0f; const float FULLY_OPEN = 0.0f;
@ -147,12 +142,12 @@ void Head::simulate(float deltaTime, bool isMine, bool billboard) {
} }
// use data to update fake Faceshift blendshape coefficients // use data to update fake Faceshift blendshape coefficients
const float BROW_LIFT_SCALE = 500.0f; const float JAW_OPEN_SCALE = 10.f;
const float JAW_OPEN_SCALE = 0.01f; Application::getInstance()->getFaceshift()->updateFakeCoefficients(_leftEyeBlink,
const float JAW_OPEN_DEAD_ZONE = 0.75f; _rightEyeBlink,
Application::getInstance()->getFaceshift()->updateFakeCoefficients(_leftEyeBlink, _rightEyeBlink, _browAudioLift,
min(1.0f, _browAudioLift * BROW_LIFT_SCALE), glm::clamp(sqrt(_averageLoudness * JAW_OPEN_SCALE) - glm::clamp(log(_averageLoudness) / JAW_OPEN_SCALE, 0.0f, 1.0f),
JAW_OPEN_DEAD_ZONE, 0.0f, 1.0f), _blendshapeCoefficients); _blendshapeCoefficients);
} }
if (!isMine) { if (!isMine) {