fix a numerical problem, but tool is still jittery

master
Kahrl 2011-09-20 18:25:29 +02:00
parent cbd2bcf102
commit 6599002149
2 changed files with 9 additions and 5 deletions

View File

@ -151,8 +151,7 @@ void Camera::update(LocalPlayer* player, f32 frametime, v2u32 screensize)
m_playernode->updateAbsolutePosition(); m_playernode->updateAbsolutePosition();
// Set head node transformation // Set head node transformation
v3f eye_offset = player->getEyePosition() - player->getPosition(); m_headnode->setPosition(player->getEyeOffset());
m_headnode->setPosition(eye_offset);
m_headnode->setRotation(v3f(player->getPitch(), 0, 0)); m_headnode->setRotation(v3f(player->getPitch(), 0, 0));
m_headnode->updateAbsolutePosition(); m_headnode->updateAbsolutePosition();

View File

@ -67,12 +67,17 @@ public:
return floatToInt(m_position + v3f(0,BS+BS/2,0), BS); return floatToInt(m_position + v3f(0,BS+BS/2,0), BS);
} }
v3f getEyePosition() v3f getEyeOffset()
{ {
// This is at the height of the eyes of the current figure // This is at the height of the eyes of the current figure
// return m_position + v3f(0, BS+BS/2, 0); // return v3f(0, BS+BS/2, 0);
// This is more like in minecraft // This is more like in minecraft
return m_position + v3f(0,BS+(5*BS)/8,0); return v3f(0,BS+(5*BS)/8,0);
}
v3f getEyePosition()
{
return m_position + getEyeOffset();
} }
virtual void setPosition(const v3f &position) virtual void setPosition(const v3f &position)