码迷,mamicode.com
首页 > 其他好文 > 详细

Physics 碰撞检测回调方法出错或者没有效果解决方法

时间:2014-06-16 17:03:46      阅读:314      评论:0      收藏:0      [点我收藏+]

标签:oncontactbegin 无效   oncontactbegin编译参数错误   

1.碰撞检测回调方法编译出错;

auto *listener = EventListenerPhysicsContact::create();

listener->onContactBegin = CC_CALLBACK_1(HelloWorld::onContactBegin,this);


在3.0rc版本中回调函数的参数变为一个,不能使用原来的两个参数;

bool HelloWorld::onContactBegin(PhysicsContact& contact)

{

    auto spriteA = (Sprite*)contact.getShapeA()->getBody()->getNode();

    auto spriteB = (Sprite*)contact.getShapeB()->getBody()->getNode();

    return true;

}


2.回调方法不调用


添加如下代码:

PhysicsBody * body = PhysicsBody::createCircle(_ball->getContentSize().width/2);

PhysicsBody * body2 = PhysicsBody::createCircle(_ball->getContentSize().width/2);

body->setMass(1.0f);

body->setContactTestBitmask(0xFFFFFFFF);

body2->setMass(1.0f);

body2->setContactTestBitmask(0xFFFFFFFF);



本文出自 “ISUper学习交流” 博客,请务必保留此出处http://isuper.blog.51cto.com/6913517/1426475

Physics 碰撞检测回调方法出错或者没有效果解决方法,布布扣,bubuko.com

Physics 碰撞检测回调方法出错或者没有效果解决方法

标签:oncontactbegin 无效   oncontactbegin编译参数错误   

原文地址:http://isuper.blog.51cto.com/6913517/1426475

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!