Tag: 碰撞

如何检测2个UIViews之间的碰撞

我有一个UIImageView包含我的主要字符,我已经使UIImageView出现圆圈见下面的代码创build我的性格 copter = [[UIImageView alloc] initWithFrame:CGRectMake(100, 500, 90, 90)]; [copter setContentMode:UIViewContentModeScaleAspectFit]; copter.layer.cornerRadius = roundf(copter.frame.size.width/2.0); copter.layer.masksToBounds = YES; [copter startAnimating]; [[self view] addSubview:copter]; [self setBat:copter]; 我在我的angular色和游戏中的其他物体之间发生碰撞时遇到了麻烦。 在矩形而不是圆上检测到碰撞。 我到处寻找答案来解决这个问题,但没有运气。 这是我使用的碰撞代码: self.batVelocity += [link duration]*FBDownardBatAccelerationIpad; [[self copter] setFrame:CGRectOffset([[self copter] frame], 0, [self batVelocity])]; UIView *removeBlock = nil; for (UIView *block in [self blocks]) { [block setFrame:CGRectOffset([block frame], [link […]

应用程序只与(lldb)崩溃?

我有一个与Cocos2D和一些UIKit混合在一个应用程序。我最近一直在实施一些新的function,所以也许内存pipe理是错误的或过度发布的东西,但每当我退出应用程序通过单击主页button,控制台崩溃只有消息(lldb)。 即使我打开NSZombiesEnabled没有什么不同。 我的应用程序指向的唯一一条线是这样的: libGPUSupportMercury.dylib`gpus_ReturnNotPermittedKillClient: 0x38101094: trap 0x38101096: nop 我不知道这是什么意思,但我很想得到这个修复。 有谁知道为什么会发生这种情况? 提前致谢! 编辑 :我认为这是因为我调用Cocos2D的CCDirector后,我做unscheduleAllSelectors和stopAnimation的原因。 如果我不叫这两个,那么就不会有任何的崩溃。

为什么一个崩溃日志象征性而不是另一个?

我有XCode Organizer中iPhone应用程序的两个崩溃日志。 两者都在20分钟内发生在同一台设备上,运行相同的应用程序版本。 一个已经被象征化了,另一个没有。 非符号日志有types和代码: Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x00000000, 0x00000000 而象征性的日志有types和代码: Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: KERN_INVALID_ADDRESS at 0x61656810 这足够的信息来解释为什么后者正确的象征,但前者不是?

Sprite Kit碰撞多次碰撞

我已经看过,并已经find了单个碰撞的答案,但我正在寻找一种方法来检测多种types的碰撞。 我正在做一个有3次碰撞的游戏。 用户飞机与敌方子弹相撞,用户的子弹与敌机(我已经工作过)发生碰撞,敌方子弹与用户子弹相撞。 我有所有的categoryBitMask和contactTestBitMask设置和更正。 这是我的委托方法。 – (void) didBeginContact:(SKPhysicsContact *)contact { SKPhysicsBody *firstBody, *secondBody; if (contact.bodyA.categoryBitMask < contact.bodyB.categoryBitMask) { firstBody = contact.bodyA; secondBody = contact.bodyB; } else { firstBody = contact.bodyB; secondBody = contact.bodyA; } // if user plane hits enemy bullet if ((firstBody.categoryBitMask == playerShipCategory) && (secondBody.categoryBitMask == enemyBulletCategory)) { [self takeDamageByAmount:POINT_INCREMENTER]; [_enemyBullet removeFromParent]; SKAction […]

iOS:准确地确定加速计输出的碰撞能量

我正在创build一个音叉应用程序,在那里您可以将iPhone拍到另一只手的手掌上,或者在柔软的表面上进行设置,以便设置叉子。 所以我想检测每个“凹凸”所包含的能量, (编辑:删除了一吨gumpf) 谁能帮我破解这个吗?

Swift / SpriteKit多重碰撞检测?

你好。 我有一个多重碰撞问题。 有一颗子弹击中敌人(红色矩形)。 然后,它++的分数。 有一个螺旋形(红色的圆圈),当敌人(红色矩形)触及它时触发场景结束。 在这种情况下,当敌人撞上螺旋状时,它就起作用,场景结束,我们进入菜单屏幕。 但是,当子弹击中敌人,同样的事情发生,我不知道为什么。 现在,这是我的代码: struct PhysicsCategory { static let None : UInt32 = 0 static let All : UInt32 = UInt32.max static let enemyOne : UInt32 = 0b1 static let enemyTwo : UInt32 = 0b1 static let bullet : UInt32 = 0b10 static let spiral : UInt32 = 0b111 } spiral.physicsBody […]

检测sprite套件中的冲突

我试图用sprite套件做一个简单的游戏。 基本的想法是,有一个玩家可以跳跃,以避免块。 但是我有一个问题,我不知道怎么做,当玩家击中区块,玩家消失,血液animation开始。 首先,我不明白这个代码是在苹果网站上find的。 static const uint32_t blockCategory = 0x1 <<0; static const uint32_t playerCategory = 0x1 <<1; 比我打电话didBeginContact函数,并在其中放置一个NSLOG(“没有调用函数”)。 但是我从来没有收到我的debugging器的输出。 这是我的_player和_block代码: – (SKSpriteNode *)字符{ _player = [SKSpriteNode spriteNodeWithImageNamed:@"soldier_run1"]; _player.physicsBody = [SKPhysicsBody bodyWithCircleOfRadius:_player.size.width /2 -5]; _player.physicsBody.dynamic = YES; _player.physicsBody.usesPreciseCollisionDetection = YES; _player.physicsBody.friction = 0; _player.physicsBody.categoryBitMask = playerCategory; _player.physicsBody.collisionBitMask = blokCategory; _player.name = @"player"; SKAction *animAction = […]