I am using panda exporter. I chose the other one, not 3ds ticks, forgot its name.
Then I have coding like this,
if( SUCCEEDED(beginScene()) )
{
D3DXMATRIXA16 mViewProj = D3DXMATRIXA16((float*)&ViewMatrix()) * D3DXMATRIXA16((float*)&ProjMatrix());
// DX10 spec only guarantees Sincos function from -100 * Pi to 100 * Pi
//float fBoundedTime = (float) m_fTime - (floor( (float) m_fTime / (2.0f * D3DX_PI)) * 2.0f * D3DX_PI);
float deltaTime = static_cast<float>((timeGetTime() - m_fTime) * 0.001f);
m_fTime = timeGetTime();
//m_pConstantTable->SetMatrix( g_pDevice, "mWorldViewProj", &mWorldViewProj );
//m_pConstantTable->SetFloat( g_pDevice, "fTime", fBoundedTime );
g_pEffect->SetMatrix("matVP", &mViewProj);
g_pEffect->SetVector("lightPos", &D3DXVECTOR4(0.0f, -1.0f, 0.0f, 0.0f));
//g_pEffect->SetFloat("fTime", fBoundedTime);
for (int i = 0; i < m_vRenderObjects.size(); i++)
{
D3DXMATRIX mat = m_vRenderObjects->GetWorldMatrix();
m_vRenderObjects->GetMesh()->Update(mat, deltaTime);
m_vRenderObjects->GetMesh()->Draw();
}
endScene();
}
The third chance is that the idle messages don't come in a regular manner. I am using QT4.
Sometimes the character is going fast and sometimes it's slowing down in application mode. I am sure I rigged the character well.
I set a keyframe at each 33ms interval and it plays back well in 3ds max.