声明:
bool onContactBegin1(cocos2d::PhysicsContact& contact);实现:
bool HelloWorld::onContactBegin1(PhysicsContact& contact)
{
log(“HelloWorld::onContactBegin”);
return true;
}
在Layer的onEnter函数中:
addSprite();
auto pELPC = EventListenerPhysicsContact::create();
pELPC->onContactBegin = CC_CALLBACK_1(HelloWorld::onContactBegin1, this);
_eventDispatcher->addEventListenerWithSceneGraphPriority(pELPC, this);
addSprite函数的实现
void HelloWorld::addSprite()
{
Sprite* ps = Sprite::create(“CloseNormal.png”);
ps->setPosition(ccp(100, 150));
const Size& szS = ps->getContentSize();
const PhysicsMaterial pm;// = {0, 2, 0};
PhysicsBody* pPBC = PhysicsBody::createCircle(szS.width+10, pm);
ps->setPhysicsBody(pPBC);
addChild(ps);
MoveTo* pMT = MoveTo::create(5, ccp(900, 240));
ps->runAction(pMT);
Sprite* psC = Sprite::create(“CloseNormal.png”);
psC->setPosition(ccp(400, 240));
PhysicsBody* pPBCC = PhysicsBody::createCircle(szS.width+10, pm);
psC->setPhysicsBody(pPBCC);
addChild(psC);
}
打包运行,其中一个圆形刚体已经碰撞到另一个,但是却并没有调用onContactBegin1
求助大神啊