|
我在场景中导入一个场景模型,该模型中包含道路、建筑物等部分,一辆车在场景中行驶,想在碰撞检测中根据情境不同进行不同的处理,如何做呢?
场景模型:
mTerrain = new dtCore::Object("Terrain");
assert(mTerrain.valid());
mTerrain->LoadFile("models/test.ive"); //在该模型中包含road1,road2,building
在碰撞检测中:
dtCore::Transformable* c1 = static_cast<dtCore::Transformable*>(dGeomGetData(o1));
dtCore::Transformable* c2 = static_cast<dtCore::Transformable*>(dGeomGetData(o2));
int numContacts = dCollide(o1, o2, 8, contactGeoms, sizeof(dContactGeom));
检测出碰撞的物体名称:c1->GetName().c_str(), c2->GetName().c_str()
显示结果:只是Terrain, 而不是我想要的ROAD1,ROAD2...
如何去做呢? |
|