我正在尝试为我的iOSspritekit游戏创建一个盾牌加电,而不是刷新当前盾牌,它在顶部堆叠另一个盾牌。我的代码:-(void)didMoveToView:(SKView*)view{...self.shieldIsActive=NO;...}-(void)didBeginContact:(SKPhysicsContact*)contact{...elseif(firstBody.categoryBitMask==CollisionCategoryLaser|firstBody.categoryBitMask==CollisionCategoryPlasmaShot|firstBod
我正在尝试控制游戏中角色的最大速度。当我移动他时,我使用这个:-(void)touchesBegan:(NSSet*)toucheswithEvent:(UIEvent*)event{UITouch*touch=[touchesanyObject];CGPointpositionInScene=[touchlocationInNode:self];SKSpriteNode*touchedNode=(SKSpriteNode*)[selfnodeAtPoint:positionInScene];CGPointposicionHero=[selfchildNodeWithName:@"he
我的节点上有几帧动画,我第一次播放动画时它滞后,fps下降。每次下一次都很好,花花公子。如何预加载纹理以使其运行顺畅?当我加载游戏时,我有这个方法运行:-(void)load{self.animationFrames=@[[SKTexturetextureWithImageNamed:@"exp1"],[SKTexturetextureWithImageNamed:@"exp2"],[SKTexturetextureWithImageNamed:@"exp3"],[SKTexturetextureWithImageNamed:@"exp4"],[SKTexturetextureWith
我注意到一个我以前没有遇到过的问题-在iPhone5和相关设备上,我的游戏在顶部和底部显示黑色区域。我为它使用标准代码,它显示skView.bounds.size即使在大型设备上也是320x480。-(void)viewWillLayoutSubviews{[superviewWillLayoutSubviews];SKView*skView=(SKView*)self.view;skView.showsFPS=YES;skView.showsNodeCount=YES;//skView.showsPhysics=YES;if(!skView.scene){NSLog(@"size:%
您好,我正在尝试在我的游戏中设置碰撞检测,我想添加碰撞检测,以便当气球碰到尖峰时它们会弹出。我看过RayWenderliches教程,但我无法理解,因为它不适用于我的案例。有关于如何为我的案例设置它的想法吗?尖刺在屏幕顶部,气球在底部生成。 最佳答案 设置两个物体之间碰撞的基础是首先设置代表可以碰撞的不同物体的upp常量。我通常会制作一个constants.h文件,其中保存所有将在游戏/应用程序中使用的变量。在constants.h文件中声明以下内容或仅将它们声明为类中的全局变量:staticconstintballoonHitCa
我需要设置一个按钮的Sprite帧。当我使用它的构造函数时:CCSprite*sprite=[CCSpritespriteWithImageNamed:@"but.png"];CCButton*button=[CCButtonbuttonWithTitle:@""spriteFrame:sprite.spriteFrame];[buttonsetBlock:^(idsender){...}]但是当我之后需要设置Sprite帧时,CCButton*button=[CCButtonbuttonWithTitle:@""];button.background.spriteFrame=spri
我正在为iOS开发SpriteKit游戏,我正在通过阅读RayWenderlich教程(SpaceShooterSpriteKit)来学习构建游戏但是我想在纵向模式下制作应用程序,因此我想让背景从上到下移动。#pragmamark-TBD-GameBackgrounds//1NSArray*parallaxBackgroundNames=@[@"bg_galaxy.png",@"bg_planetsunrise.png",@"bg_spacialanomaly.png",@"bg_spacialanomaly2.png"];CGSizeplanetSizes=CGSizeMake(20
我正在尝试为我的游戏实现暂停功能。到目前为止,我已经通过将我的Sprite速度设置为“0”来让它工作。但是当按下暂停按钮(速度=0)时,我应用缓动的Sprite表现得很奇怪;他们的翻译-当速度设置为“0”以及当它们重置为“1”时,位置和旋转都会跳到Action中的另一个时间/地点。我非常感谢在这个问题上的一些意见-修复我的代码或更好的方法:)我的Sprite的移动代码:SKAction*_movePlayerUp=[SKActionmoveToY:200duration:3];movePlayerUp.timingMode=SKActionTimingEaseOut;[_playerS
我做了一些搜索,但没有找到任何直接解决我的问题的东西:我有一个SKScene有几个SKNodes每个都有SKSpriteNode我的游戏的对象,并且我正在使用背景UIImageView(有一些我需要用背景做的事情不能用spritekit合理地完成-至少据我所知);我遇到的问题是UIImageView出现在所有内容之上,我看不到我的游戏对象。在我的ViewController(.m文件)中,我有以下代码来调用我的场景@implementationGameViewController-(void)viewDidLoad{[superviewDidLoad];SKView*skView=(S
我正在学习如何为sprite制作动画,因此在网上找到了sprite表图像。问题是我还需要plist文件,但我没有。我试过Zwoptex,但似乎不起作用。有人知道吗?谢谢。 最佳答案 Zwoptex工作得很好。它确实完美地为cocos2d输出了一个.plist文件。我使用的是Mac版本。转到发布设置,您应该会看到.plist文件的输出位置。现在,准备就绪后,单击发布。它将输出您在设置中设置的位置的纹理和坐标。并且有效。 关于ios-我已经有一个spritesheet图像,我怎样才能得到co