a mess of directx and havok stuff