Cocos2d不规则形状精灵

时间:2012-12-06 20:01:08

标签: cocos2d-iphone sprite shape vertex

嗨,我正在研究cocos2d游戏中某种具有风景和目标的射击游戏,你可以在真实的射击范围内拥有目标。对于子弹撞击我使用的粒子效果会影响屏幕上的某个点,当对目标产生影响时,它会播放简单的动画并落在地面上。我的游戏工作完美与矩形目标,但我也想使用真正的身体形状。因此,当粒子撞击身体时,它会下降。我想使用轮廓描绘的精灵,所以当粒子在腿之间或肩膀之间撞击时,头部射击失败。我使用此代码来检测粒子何时影响正常矩形目标的目标。

// Sustem是我的粒子(子弹)  CGRect projectileRect = [enemy boundingBox];

if ( CGRectContainsPoint(projectileRect, system.position)) {
    [enemy runAction:_walkAction];}

我尝试使用vertexHelper物理编辑器和其他工具但没有成功,我没有  希望碰撞检测仅在粒子位于某些跟踪点之间时运行某些动作

1 个答案:

答案 0 :(得分:1)

我感觉到你的痛苦。没有简单的方法来检测非方形碰撞。你可以使用PhysicsEditor并按照Ray的教程: how to use box2d for just collision detection。我讨厌实现物理引擎的想法(在我看来,它是草率的),以便我可以使用非方形精灵。还有其他方法,比如bezier曲线,但在你的情况下(目标射击),我怀疑你需要尽可能多的精确度。 PhysicsEditor和box2d / chipmunk将提供。