首页 > 代码库 > Cocos2d-x 精灵碰撞检測(方法二)

Cocos2d-x 精灵碰撞检測(方法二)

将"Cocos2d-x 精灵碰撞检測(方法一)" update函数改动一下。

使用精灵boundingBox函数获取直接精灵边界框, 不用自己计算精灵矩形大小了,还比較精确,然后调用intersectsRect计算2个精灵矩形是否存在交集。

代码:

void HelloWorld::update(float delta)
{
    //返回精灵边界框
	CCRect cr1 = sp1->boundingBox();
	CCRect cr2 = sp2->boundingBox();

	if(cr1.intersectsRect(cr2))	//是否存在交集
	{
		CCLOG("Is Conllision...") ;
	}
	else
		CCLOG("Is't Conllision...") ;
}