我在 onContactBegin 里写的碰撞检测
用auto nodeA = contact.getShapeA()->getBody()->getNode(); 只能得到 Node 类 但不能调用碰撞物体包含的方法。
请问有什么办法能调用碰撞物体的方法包含的方法或者得到这个特定的物体么?
网上看的都是在update里 遍历物体 检查边界是否重合, 有其他方法么?
谢谢啦
我在 onContactBegin 里写的碰撞检测
用auto nodeA = contact.getShapeA()->getBody()->getNode(); 只能得到 Node 类 但不能调用碰撞物体包含的方法。
请问有什么办法能调用碰撞物体的方法包含的方法或者得到这个特定的物体么?
网上看的都是在update里 遍历物体 检查边界是否重合, 有其他方法么?
谢谢啦
求大神解答
不知道你到底想表达什么意思:
auto nodeA = contact.getShapeA()->getBody()->getNode();不就是获取碰撞刚体所附属的节点么?
auto nodeA = contact.getShapeA()->getBody();就是获取碰撞物体。
一个碰撞的发生是两者,所以你必须分别获取bodyA跟bodyB,然后判断它们的tag是不是你要的。
然后你说的调用碰撞物体所包含的方法,这句我实在看不懂。是不是指碰撞后调用碰撞监听器?
如果你指碰撞后触发监听器而跳到监听函数里的话,你则需要手动开启刚体的的碰撞检测掩码,默然为0。
ContactTest为碰撞测试码,只有别人的组别跟自己的碰撞测试码相与不为零的时候,就会激活碰撞检测函数,即onContactBegin()。