答案1:
其实缩放不缩放是一样的啊,如果粗略一些就计算这2个sprite的中心点距离,如果大于等于二者高度或者宽度之和的一半,则为已碰撞,如果想精确些那么要计算每个sprite的轮廓上每个角的坐标来比较!
答案2:
contentsize 是实际的大小。
或者采取画矩形相交判断,
圆形半径判断。
答案3:
CGRect projectileRect = CGRectMake(projectile.position.x ,
projectile.position.y , projectile.contentSize.width , projectile.contentSize.height );
CGRect targetRect = CGRectMake(target.position.x , target.position.y , target.contentSize.width, target.contentSize.height);
if (CGRectIntersectsRect(projectileRect, targetRect)) {
碰撞了.
}
第一个代表rect是a物体在屏幕上占的空间.第二个rect是b物体占的空间.两个空间相交则表示碰撞了.