mirror of
https://github.com/overte-org/overte.git
synced 2025-08-06 19:59:28 +02:00
Stop rotating more quickly, display avatar position and yaw stats
This commit is contained in:
parent
0d26bb4266
commit
0445da3221
2 changed files with 14 additions and 3 deletions
|
@ -3307,7 +3307,7 @@ void Application::displayStats() {
|
||||||
int statsVerticalOffset = 8;
|
int statsVerticalOffset = 8;
|
||||||
|
|
||||||
char stats[200];
|
char stats[200];
|
||||||
sprintf(stats, "%3.0f FPS, %d Pkts/sec, %3.2f Mbps",
|
sprintf(stats, "%3.0f FPS, %d Pkts/sec, %3.2f Mbps ",
|
||||||
_fps, _packetsPerSecond, (float)_bytesPerSecond * 8.f / 1000000.f);
|
_fps, _packetsPerSecond, (float)_bytesPerSecond * 8.f / 1000000.f);
|
||||||
drawtext(10, statsVerticalOffset + 15, 0.10f, 0, 1.0, 0, stats);
|
drawtext(10, statsVerticalOffset + 15, 0.10f, 0, 1.0, 0, stats);
|
||||||
|
|
||||||
|
@ -3338,11 +3338,16 @@ void Application::displayStats() {
|
||||||
pingVoxel = totalPingVoxel/voxelServerCount;
|
pingVoxel = totalPingVoxel/voxelServerCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
char pingStats[200];
|
char pingStats[200];
|
||||||
sprintf(pingStats, "Ping audio/avatar/voxel: %d / %d / %d avg %d max ", pingAudio, pingAvatar, pingVoxel, pingVoxelMax);
|
sprintf(pingStats, "Ping audio/avatar/voxel: %d / %d / %d avg %d max ", pingAudio, pingAvatar, pingVoxel, pingVoxelMax);
|
||||||
drawtext(10, statsVerticalOffset + 35, 0.10f, 0, 1.0, 0, pingStats);
|
drawtext(10, statsVerticalOffset + 35, 0.10f, 0, 1.0, 0, pingStats);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char avatarStats[200];
|
||||||
|
glm::vec3 avatarPos = _myAvatar.getPosition();
|
||||||
|
sprintf(avatarStats, "Avatar position: %.3f, %.3f, %.3f, yaw = %.2f", avatarPos.x, avatarPos.y, avatarPos.z, _myAvatar.getBodyYaw());
|
||||||
|
drawtext(10, statsVerticalOffset + 55, 0.10f, 0, 1.0, 0, avatarStats);
|
||||||
|
|
||||||
|
|
||||||
std::stringstream voxelStats;
|
std::stringstream voxelStats;
|
||||||
voxelStats.precision(4);
|
voxelStats.precision(4);
|
||||||
|
|
|
@ -31,7 +31,6 @@ const bool BALLS_ON = false;
|
||||||
const bool USING_AVATAR_GRAVITY = true;
|
const bool USING_AVATAR_GRAVITY = true;
|
||||||
const glm::vec3 DEFAULT_UP_DIRECTION (0.0f, 1.0f, 0.0f);
|
const glm::vec3 DEFAULT_UP_DIRECTION (0.0f, 1.0f, 0.0f);
|
||||||
const float YAW_MAG = 500.0;
|
const float YAW_MAG = 500.0;
|
||||||
const float BODY_SPIN_FRICTION = 5.0;
|
|
||||||
const float MY_HAND_HOLDING_PULL = 0.2;
|
const float MY_HAND_HOLDING_PULL = 0.2;
|
||||||
const float YOUR_HAND_HOLDING_PULL = 1.0;
|
const float YOUR_HAND_HOLDING_PULL = 1.0;
|
||||||
const float BODY_SPRING_DEFAULT_TIGHTNESS = 1000.0f;
|
const float BODY_SPRING_DEFAULT_TIGHTNESS = 1000.0f;
|
||||||
|
@ -659,12 +658,19 @@ void Avatar::simulate(float deltaTime, Transmitter* transmitter, float gyroCamer
|
||||||
orientation = orientation * glm::quat(glm::radians(
|
orientation = orientation * glm::quat(glm::radians(
|
||||||
glm::vec3(_bodyPitchDelta, _bodyYawDelta, _bodyRollDelta) * deltaTime));
|
glm::vec3(_bodyPitchDelta, _bodyYawDelta, _bodyRollDelta) * deltaTime));
|
||||||
// decay body rotation momentum
|
// decay body rotation momentum
|
||||||
|
|
||||||
|
const float BODY_SPIN_FRICTION = 7.5f;
|
||||||
float bodySpinMomentum = 1.0 - BODY_SPIN_FRICTION * deltaTime;
|
float bodySpinMomentum = 1.0 - BODY_SPIN_FRICTION * deltaTime;
|
||||||
if (bodySpinMomentum < 0.0f) { bodySpinMomentum = 0.0f; }
|
if (bodySpinMomentum < 0.0f) { bodySpinMomentum = 0.0f; }
|
||||||
_bodyPitchDelta *= bodySpinMomentum;
|
_bodyPitchDelta *= bodySpinMomentum;
|
||||||
_bodyYawDelta *= bodySpinMomentum;
|
_bodyYawDelta *= bodySpinMomentum;
|
||||||
_bodyRollDelta *= bodySpinMomentum;
|
_bodyRollDelta *= bodySpinMomentum;
|
||||||
|
|
||||||
|
float MINIMUM_ROTATION_RATE = 2.0f;
|
||||||
|
if (fabs(_bodyYawDelta) < MINIMUM_ROTATION_RATE) { _bodyYawDelta = 0.f; }
|
||||||
|
if (fabs(_bodyRollDelta) < MINIMUM_ROTATION_RATE) { _bodyRollDelta = 0.f; }
|
||||||
|
if (fabs(_bodyPitchDelta) < MINIMUM_ROTATION_RATE) { _bodyPitchDelta = 0.f; }
|
||||||
|
|
||||||
const float MAX_STATIC_FRICTION_VELOCITY = 0.5f;
|
const float MAX_STATIC_FRICTION_VELOCITY = 0.5f;
|
||||||
const float STATIC_FRICTION_STRENGTH = _scale * 20.f;
|
const float STATIC_FRICTION_STRENGTH = _scale * 20.f;
|
||||||
applyStaticFriction(deltaTime, _velocity, MAX_STATIC_FRICTION_VELOCITY, STATIC_FRICTION_STRENGTH);
|
applyStaticFriction(deltaTime, _velocity, MAX_STATIC_FRICTION_VELOCITY, STATIC_FRICTION_STRENGTH);
|
||||||
|
|
Loading…
Reference in a new issue