Error with hkTransform

Error with hkTransform

Hi Everyone,

I'm getting an breakpoint when i try to get the current transform of a Rigidbody (an static scenario and a group of boxes), loaded from an *.HKX File, this happened since I downloaded and installed the lastest Havok Free Binary Version 2012 This happens when I try t call:


on my source Code the function is:

HRESULT MSPGGeometry::OnRender( IDirect3DDevice9* pd3dDevice, D3DXMATRIX ViewProj ){



D3DXMatrixRotationX(&rX, 0.0001f);

D3DXMatrixRotationX(&rY, 0.0001f);

D3DXMatrixRotationX(&rZ, 0.0001f);

hkTransform thr;

if(m_CollisionModel !=0 ){

thr = m_CollisionModel->getTransform();


thr.get4x4ColumnMajor((hkFloat32*)Mat); //HERE IS THE BUG/ERROR/BREAKPOINT


//m_Matrix = }else


D3DXMatrixTranslation(&Mat, thr.getTranslation()(0),


thr.getTranslation()(2) );



printf("elemento Nulo %s\n",  m_gInfo.tCollisionModel);


m_Matrix = Mat;

m_Matrix = m_Matrix*(rX*rY*rZ);

m_3DModel->RenderWithPRT(pd3dDevice, &(m_Matrix*ViewProj),true);

return S_OK;


Im working with VS 2010 Ultimate, Directx 9 SDK Febrary 2010, 3DS MAX 2011, and Havok Physics,Animation SDK 2012 R1,

Thanks, I Will waiting for you support

3 post / 0 nuovi
Ultimo contenuto
Per informazioni complete sulle ottimizzazioni del compilatore, consultare l'Avviso sull'ottimizzazione

Hi michael:

Are you using SIMD version or not? D3DXMATRIX is not 16 bytes alignment guaranteed. And a SIMD style copy happened in hkTransform::get4x4ColumnMajor(...) need 16 bytes alignment parameter. You can try to use D3DXMATRIXA16 or no-simd version.

If you still have problem,can you build a fulldebug multithread dll version, and try to trace down the problem? For example, make sure the value in hkTransform is correct...


Joe Developer Support Engineer Havok

Hey Havok_Joe thank you very much,
there was the bug, now all its ok, and thanks for your quick response

Michael Guerra

Lascia un commento

Eseguire l'accesso per aggiungere un commento. Non siete membri? Iscriviti oggi