mirror of
https://github.com/overte-org/overte.git
synced 2025-08-07 21:04:58 +02:00
feedback changes
This commit is contained in:
parent
379f98b26d
commit
3f2aa56187
3 changed files with 66 additions and 71 deletions
|
@ -46,9 +46,6 @@ OtherAvatar::OtherAvatar(QThread* thread) : Avatar(thread) {
|
|||
connect(_skeletonModel.get(), &Model::setURLFinished, this, &Avatar::setModelURLFinished);
|
||||
connect(_skeletonModel.get(), &Model::rigReady, this, &Avatar::rigReady);
|
||||
connect(_skeletonModel.get(), &Model::rigReset, this, &Avatar::rigReset);
|
||||
|
||||
// add the purple orb
|
||||
createOrb();
|
||||
}
|
||||
|
||||
OtherAvatar::~OtherAvatar() {
|
||||
|
|
|
@ -490,8 +490,6 @@ public:
|
|||
/// \return true if an error should be logged
|
||||
bool shouldLogError(const quint64& now);
|
||||
|
||||
virtual void setCollisionGroupFlag() {}
|
||||
|
||||
/// \param packet byte array of data
|
||||
/// \param offset number of bytes into packet where data starts
|
||||
/// \return number of bytes parsed
|
||||
|
|
|
@ -689,10 +689,10 @@ void CharacterController::updateState() {
|
|||
|
||||
btScalar rayLength = _radius;
|
||||
int32_t collisionMask = computeCollisionMask();
|
||||
if (collisionMask == BULLET_COLLISION_MASK_MY_AVATAR) {
|
||||
rayLength += _scaleFactor * DEFAULT_AVATAR_FALL_HEIGHT;
|
||||
} else {
|
||||
if (collisionMask == BULLET_COLLISION_MASK_COLLISIONLESS) {
|
||||
rayLength += MIN_HOVER_HEIGHT;
|
||||
} else {
|
||||
rayLength += _scaleFactor * DEFAULT_AVATAR_FALL_HEIGHT;
|
||||
}
|
||||
btVector3 rayEnd = rayStart - rayLength * _currentUp;
|
||||
|
||||
|
@ -726,7 +726,19 @@ void CharacterController::updateState() {
|
|||
|
||||
// disable normal state transitions while collisionless
|
||||
const btScalar MAX_WALKING_SPEED = 2.65f;
|
||||
if (collisionMask == BULLET_COLLISION_MASK_MY_AVATAR) {
|
||||
if (collisionMask == BULLET_COLLISION_MASK_COLLISIONLESS) {
|
||||
// when collisionless: only switch between State::Ground and State::Hover
|
||||
// and bypass state debugging
|
||||
if (rayHasHit) {
|
||||
if (velocity.length() > (MAX_WALKING_SPEED)) {
|
||||
_state = State::Hover;
|
||||
} else {
|
||||
_state = State::Ground;
|
||||
}
|
||||
} else {
|
||||
_state = State::Hover;
|
||||
}
|
||||
} else {
|
||||
switch (_state) {
|
||||
case State::Ground:
|
||||
if (!rayHasHit && !_hasSupport) {
|
||||
|
@ -788,18 +800,6 @@ void CharacterController::updateState() {
|
|||
}
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
// when collisionless: only switch between State::Ground and State::Hover
|
||||
// and bypass state debugging
|
||||
if (rayHasHit) {
|
||||
if (velocity.length() > (MAX_WALKING_SPEED)) {
|
||||
_state = State::Hover;
|
||||
} else {
|
||||
_state = State::Ground;
|
||||
}
|
||||
} else {
|
||||
_state = State::Hover;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue