1
0
forked from 0ad/0ad

Fix non-smooth vertical interpolation of unit positions

This was SVN commit r7358.
This commit is contained in:
Ykkrosh 2010-03-17 22:57:36 +00:00
parent 99a261328a
commit 705db5181d

View File

@ -290,15 +290,15 @@ public:
float x = Interpolate(m_LastX.ToFloat(), m_X.ToFloat(), frameOffset); float x = Interpolate(m_LastX.ToFloat(), m_X.ToFloat(), frameOffset);
float z = Interpolate(m_LastZ.ToFloat(), m_Z.ToFloat(), frameOffset); float z = Interpolate(m_LastZ.ToFloat(), m_Z.ToFloat(), frameOffset);
entity_pos_t ground; float ground = 0;
CmpPtr<ICmpTerrain> cmpTerrain(*m_Context, SYSTEM_ENTITY); CmpPtr<ICmpTerrain> cmpTerrain(*m_Context, SYSTEM_ENTITY);
if (!cmpTerrain.null()) if (!cmpTerrain.null())
{ {
ground = cmpTerrain->GetGroundLevel(m_X, m_Z); ground = cmpTerrain->GetGroundLevel(x, z);
// TODO: do something with m_Floating // TODO: do something with m_Floating
} }
float y = ground.ToFloat() + m_YOffset.ToFloat(); float y = ground + m_YOffset.ToFloat();
// TODO: do something with m_AnchorType // TODO: do something with m_AnchorType