草庐IT

3DXVECTOR

全部标签

c++ - 对类方法的正确约定调用

我无法使用__thiscall给我以下错误:错误C4234:使用了非标准扩展:“__thiscall”关键字保留供将来使用我正在从一个dll中调用一个类函数:typedefvoid(*SETDIRPROC)(void*,D3DXVECTOR3&);voidZMyCharacter_SetDirection_Rev(void){if(pZMyCharacter==0){printf("cannotsetdirectionnow\n");return;}SETDIRPROCSetDir_Proc=(SETDIRPROC)0x004A2AF0;D3DXVECTOR3pos=D3DXVECTO

c++ - 取 1.0f 或 -1.0f 的 acos 是否合法?

我的代码有一个问题,四处移动的代理突然消失了。这似乎是因为它们的位置突然在x和y轴上变为1.#INF000。我做了一些研究,有人说如果一个值分别超过或低于1和-1,acos可能会发生这种情况,但接着说如果这些值也很接近,它可能会发生。我添加了一个if语句来检查我是否曾经将acos设为1或-1,并且它确实在它们消失之前评估为1几个帧周期,但是我真的不明白能够修复它的问题.任何人都可以阐明这个问题吗?D3DXVECTOR3D3DXVECTOR3Helper::RotToTarget2DPlane(D3DXVECTOR3position,D3DXVECTOR3target)//XYPLANE