mirror of
https://github.com/overte-org/overte.git
synced 2025-08-06 15:29:05 +02:00
make tipVelocity() world relative
This commit is contained in:
parent
fe5a8d9da2
commit
74fe9893ba
2 changed files with 4 additions and 3 deletions
|
@ -73,7 +73,7 @@ void BuckyBalls::grab(PalmData& palm, const glm::vec3& fingerTipPosition, glm::q
|
||||||
diff = _bballPosition[_bballIsGrabbed[palm.getSixenseID()]] - fingerTipPosition;
|
diff = _bballPosition[_bballIsGrabbed[palm.getSixenseID()]] - fingerTipPosition;
|
||||||
penetration = glm::length(diff) - (_bballRadius[_bballIsGrabbed[palm.getSixenseID()]] + COLLISION_RADIUS);
|
penetration = glm::length(diff) - (_bballRadius[_bballIsGrabbed[palm.getSixenseID()]] + COLLISION_RADIUS);
|
||||||
_bballPosition[_bballIsGrabbed[palm.getSixenseID()]] -= glm::normalize(diff) * penetration;
|
_bballPosition[_bballIsGrabbed[palm.getSixenseID()]] -= glm::normalize(diff) * penetration;
|
||||||
glm::vec3 fingerTipVelocity = avatarOrientation * palm.getTipVelocity();
|
glm::vec3 fingerTipVelocity = palm.getTipVelocity();
|
||||||
if (_bballElement[_bballIsGrabbed[palm.getSixenseID()]] != 1) {
|
if (_bballElement[_bballIsGrabbed[palm.getSixenseID()]] != 1) {
|
||||||
_bballVelocity[_bballIsGrabbed[palm.getSixenseID()]] = fingerTipVelocity;
|
_bballVelocity[_bballIsGrabbed[palm.getSixenseID()]] = fingerTipVelocity;
|
||||||
}
|
}
|
||||||
|
|
|
@ -169,10 +169,11 @@ public:
|
||||||
|
|
||||||
void setTipPosition(const glm::vec3& position) { _tipPosition = position; }
|
void setTipPosition(const glm::vec3& position) { _tipPosition = position; }
|
||||||
const glm::vec3 getTipPosition() const { return _owningHandData->leapPositionToWorldPosition(_tipPosition); }
|
const glm::vec3 getTipPosition() const { return _owningHandData->leapPositionToWorldPosition(_tipPosition); }
|
||||||
const glm::vec3 getTipRawPosition() const { return _tipPosition; }
|
const glm::vec3& getTipRawPosition() const { return _tipPosition; }
|
||||||
|
|
||||||
const glm::vec3& getTipVelocity() const { return _tipVelocity; }
|
|
||||||
void setTipVelocity(const glm::vec3& velocity) { _tipVelocity = velocity; }
|
void setTipVelocity(const glm::vec3& velocity) { _tipVelocity = velocity; }
|
||||||
|
const glm::vec3 getTipVelocity() const { return _owningHandData->leapDirectionToWorldDirection(_tipVelocity); }
|
||||||
|
const glm::vec3& getTipRawVelocity() const { return _tipVelocity; }
|
||||||
|
|
||||||
void incrementFramesWithoutData() { _numFramesWithoutData++; }
|
void incrementFramesWithoutData() { _numFramesWithoutData++; }
|
||||||
void resetFramesWithoutData() { _numFramesWithoutData = 0; }
|
void resetFramesWithoutData() { _numFramesWithoutData = 0; }
|
||||||
|
|
Loading…
Reference in a new issue