我想根据您触摸屏幕的左半部分或右半部分来运行不同的操作。所以当你触摸左半边时一个Action,当你触摸右半边时另一个Action。我想我可以制作一个覆盖一半屏幕的透明按钮图像并使用thiscode触摸时运行一个Action,但我不认为这是要走的路。有没有更好的方法来检测触摸的位置? 最佳答案 覆盖touchesEnded:withEvent或touchesBegan:withEvent:方法来执行此操作:-(void)touchesEnded:(NSSet*)toucheswithEvent:(UIEvent*)event{UITo
我一直在尝试制作一个动画Sprite,它们有很多教程,但它们都是针对Cocos2d2.x的。我的Sprite表名为flappbird.png,.plist名为flappbird.plist我有这段代码,但每次我启动场景时它都会崩溃,这是在我的init方法中//-----------------------------------------------------------------------_player=[CCSpritespriteWithImageNamed:@"monster1.png"];//comesfromyour.plistfile_player.positio
我遵循SpriteKit指南,在场景编辑器中它要求我将类别mask设置为32,将碰撞mask设置为11。这些数字有什么关系? 最佳答案 Category位掩码告诉Sprite-Kit这是什么类型的对象。Collision位掩码告诉SpriteKit这个对象是什么对象碰撞(即会撞击并弹开)。ContactTest位掩码告诉Sprite-Kit你想要什么接触收到通知,即当此对象接触到另一个对象时。碰撞由Sprite-Kit游戏引擎自动处理;联系人由您的代码处理-当发生您感兴趣的联系人时,您的代码(didBeginContact'对于Sw
我正在尝试做一个简单的自动倒车动画。SKAction*a=[SKActionmoveToX:10duration:0.5];a=[SKActionrepeatActionForever:a];[carrunAction:a];但Action不会逆转。如何获得与CoreAnimation类似的自动反转效果? 最佳答案 AndreyGordeev的回答足够接近,floatx=car.position.x;SKAction*a=[SKActionmoveToX:(x+10)duration:0.5];SKAction*b=[SKActio
我很好奇SpriteKitRestitution到底配置了什么?我知道它配置了一些关于SKPhysicsBody参数的行为,但行为有何不同? 最佳答案 查看Apple文档中SKPhysicsBody的restitution属性的描述:Thispropertyisusedtodeterminehowmuchenergythephysicsbodyloseswhenitbouncesoffanotherobject.Thepropertymustbeavaluebetween0.0and1.0.Restitution会影响physics
我正在为视频设置Sprite/动画图像,但不明白如何做到这一点。有人请帮我建议如何用视频设置Sprite图像。 最佳答案 您可以做的是将您的“gif”动画转换为视频,然后像任何其他正常场合一样将其与其他视频混合。 关于ios-如何用视频设置sprite/GIF图像?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/33080070/
documentation显示了SpriteKit的简化运行循环。我想了解他们是如何实现的。SKView调用-update:在SKScene上.然后首先评估Action,然后模拟物理,并让子类调整场景。对场景进行更改后,SKView最后将节点树渲染到屏幕上。我不明白的是细节。SpriteKit是否通过使用不同的线程或GCD队列将场景计算与场景渲染分离?它是在后台执行所有OpenGL渲染调用,还是一切都发生在主线程上?SpriteKit是在什么时候在后台和主线程之间来回切换的,它是如何同步处理场景和渲染场景的呢?如果您的场景更新时间过长,会发生什么情况? 最佳
我是Stackoverflow的长期用户,但第一次发帖。我的问题看似简单,有没有办法让发射器的粒子与场景中的物理Sprite相互作用?(例如,如果我在下雨时使用粒子,我想让它从一个拿着雨伞的人的Sprite上弹跳或颠簸。一定有办法,但我没有看到很多关于添加物理的文档到单个粒子。有什么想法吗?谢谢! 最佳答案 没有。没有办法让SpriteKit的内置粒子与物理体相互作用。您可以控制的每个粒子属性都是SKEmitterNode的属性,它没有设置粒子物理行为的属性。事实上,粒子被设计得非常轻,因此您可以在SpriteKit支持的任何硬件上
我有一个Sprite(例如纸飞机)。我想让它像下图一样移动。我可以使用很多MoveTo和RotateByAction来按点定义路径,但这对我来说似乎是个坏主意。如何实现? 最佳答案 我认为发布一个答案可能会很好,该答案显示了如果您对sprite有明确的控制,更新将如何工作的基础知识。我不确定您使用的是Cocos2d还是Cocos2d-X,但该技术适用于任何一种情况。代码是使用Cocos2d-x的C++。想法是,根据时间,您(手动)更新Sprite的位置。Sprite在任何时候的位置都由动画开始后的秒数决定。该线名义上遵循从(x0,y
我正在使用spritekit场景构建器构建我的场景(在xcode7ios9中创建项目时也称为GameScene.sks文件)。SpriteKit仅在设置屏幕高度和宽度时使用像素值。我的问题是:如果我将像素值设置为iphone6的像素值,游戏对于ipad和iphone6+来说会不会太小?为什么没有适合设备屏幕的选项?我应该怎么做才能避免这种情况? 最佳答案 像素密度首先,场景的大小是以Points而不是Pixels定义的。让我们看看支持iOS9的设备是如何处理这个问题的:1point=1x1pixel:iPad2,iPadmini1p