diff --git a/interface/src/avatar/MyAvatar.cpp b/interface/src/avatar/MyAvatar.cpp index 70c8d7f422..1c87e301a4 100644 --- a/interface/src/avatar/MyAvatar.cpp +++ b/interface/src/avatar/MyAvatar.cpp @@ -6846,17 +6846,14 @@ glm::vec3 MyAvatar::getCameraEyesPosition(float deltaTime) { frontOffset = frontOffset < 0.0f ? 0.0f : mixAlpha * frontOffset; glm::vec3 cameraOffset = upOffset * Vectors::UP + frontOffset * Vectors::FRONT; const float TAU = 0.1f; - _cameraEyesOffset = _cameraEyesOffset + (cameraOffset - _cameraEyesOffset) * TAU * timeScale; + _cameraEyesOffset = _cameraEyesOffset + (cameraOffset - _cameraEyesOffset) * min(1.0f, TAU * timeScale); glm::vec3 estimatedCameraPosition = defaultEyesPosition + getWorldOrientation() * _cameraEyesOffset; return estimatedCameraPosition; } bool MyAvatar::isJumping() { - if (_skeletonModel->isLoaded()) { - return (_skeletonModel->getRig().getState() == Rig::RigRole::InAir || - _skeletonModel->getRig().getState() == Rig::RigRole::Takeoff) && !isFlying(); - } - return false; + return (_characterController.getState() == CharacterController::State::InAir || + _characterController.getState() == CharacterController::State::Takeoff) && !isFlying(); } bool MyAvatar::setPointAt(const glm::vec3& pointAtTarget) { diff --git a/libraries/animation/src/Rig.h b/libraries/animation/src/Rig.h index f47dbc37e1..5f881fb8e7 100644 --- a/libraries/animation/src/Rig.h +++ b/libraries/animation/src/Rig.h @@ -115,16 +115,6 @@ public: Seated }; - enum class RigRole { - Idle = 0, - Turn, - Move, - Hover, - Takeoff, - InAir, - Seated - }; - Rig(); virtual ~Rig(); @@ -267,7 +257,6 @@ public: bool getFlowActive() const; bool getNetworkGraphActive() const; void setDirectionalBlending(const QString& targetName, const glm::vec3& blendingTarget, const QString& alphaName, float alpha); - const RigRole getState() const { return _state; } signals: void onLoadComplete(); @@ -350,6 +339,16 @@ protected: AnimVariantMap _animVars; AnimVariantMap _networkVars; + enum class RigRole { + Idle = 0, + Turn, + Move, + Hover, + Takeoff, + InAir, + Seated + }; + RigRole _state { RigRole::Idle }; RigRole _desiredState { RigRole::Idle }; float _desiredStateAge { 0.0f };