草庐IT

ios - 暂停 Sprite Kit 物理游戏在 iOS 9 上无法正常工作

我在使用物理暂停sprite套件游戏时遇到问题。游戏包含一个在SpriteScene中移动并具有以下参数的球:self.ball.physicsBody.friction=0;self.ball.physicsBody.linearDamping=0;self.ball.physicsBody.restitution=1.0f;self.ball.physicsBody.affectedByGravity=NO;self.ball.physicsBody.usesPreciseCollisionDetection=YES;问题是当我暂停游戏时,我调用了这些方法:self.scene.p

c# - 是否可以从用户在 sitecore 中上传的图像创建 Sprite ?

我们正在构建一个主要基于图像的内容的sitecore应用程序。目前,我们发现iOS上包含大量图片的页面性能下降。我们的大部分图片都是Sprite图,但用户图片目前是一张一张加载的。有没有人想出一种从上传到sitecore的图像生成Sprite的方法? 最佳答案 我找到了这个blog发布有关如何使用svg在Sitecore中处理Sprite的帖子。希望它能帮助您解决问题。 关于c#-是否可以从用户在sitecore中上传的图像创建Sprite?,我们在StackOverflow上找到一个类

ios - 使用移动触摸旋转 Sprite 节点

我是Swift和SpriteKit的新手,正在学习理解“Fish&Trip”游戏中的控件。sprite节点始终位于View的中心,它会根据您触摸的移动而旋转,无论您在哪里触摸和移动(按住)它都会相应地旋转。这里的困难在于它不同于我在图1和图2中注意到的平移手势和简单的触摸位置。对于第一张图片,触摸位置由atan2f处理,然后发送到SKAction.rotate完成,我可以让它工作。对于第二张图片,我可以通过设置一个UIPanGestureRecognizer来获得它并且它可以工作,但是您只能在围绕初始点(touchesBegan)移动手指时旋转节点。我的问题是第三张图,和Fish&Tr

ios - 当您在 Cocos2d 中加载纹理(使用 Sprite 表)时,内存使用量如何增加?

我正在构建一个应用程序,它使用Cocos2d创建内容map(技术上是图论意义上的大树)。每个节点都由一个具有自己纹理的Sprite表示,叶节点都有第二个“按下按钮”纹理。另外,有些节点是PNG动画。我有一个包含130个左右节点纹理的sprite表,以及3个用于动画的其他sprite表。所有这4个文件加起来只有大约18.4MB。如果我运行该应用程序但不运行cocos2d部分(即根本不启动框架,因此从不加载纹理),该应用程序的运行速度约为10MB。当我加载Cocos2d和那些Sprite表时,内存猛增超过90MB。我所有的研究似乎都表明我正在以尽可能最有效的方式做事,但由于内存使用率已经如

ios - cocos2d Sprite 表的大量内存消耗

根据cocos2dbestpractices,我已将游戏的关键Assets打包到4个单独的Sprite表中。FWIW,我用TexturePacker创建了这些表并用TinyPng压缩了生成的.pngs.4个中最大的Sprite表(包含我的对话框)是375KB大和2048x2048px-hd变体(又名@2x).我一直注意到游戏中存在内存问题,因此我启动了Instruments中的Allocations工具。果然,主场景在视网膜设备上使用了~250MB内存(在非视网膜设备上~95MB)。哇!巨大的!更糟糕的是,较旧的视网膜设备(例如iPhone4)存在相当大的延迟。我做的第一件事是移除其中

ios - Sprite 套件与子 Sprite 的碰撞检测

我正在尝试检测两个sprite之间的碰撞,但我无法对子sprite执行此操作。self.player=[[Playeralloc]initWithImageNamed:@"player"];self.player.position=CGPointMake(150,75);[selfaddChild:self.player];_object=[SKSpriteNodespriteNodeWithImageNamed:@"object"];_object.position=CGPointMake(-40,27);[self.playeraddChild:_object];然后我有这样的碰撞

ios - 如何像 "cham cham"那样创建 Sprite 表面

我的问题可能有点太宽泛了,但我会考虑这个概念。我怎样才能像他们在“ChamCham”应用程序中那样创建表面https://itunes.apple.com/il/app/cham-cham/id760567889?mt=8.我在应用程序中完成了大部分工作,但随着用户触摸而发生的表面变化却大不相同。你可以改变它的高度,它会变大和变小。如何使用spritekit来完成这背后的概念是什么,那里的任何人都可以解释一下。谢谢 最佳答案 来自ChamCham开发人员的答案:)让我把解释分成不同的部分:注意:由于项目启动时间较早,因此使用纯Ope

ios - Sprite Kit 如何让网格中的特定节点执行 Action ?

我的场景中有一个类别的25个相同的Sprite,它们是使用for循环创建的。我希望能够单击一个特定的Sprite,例如,开始旋转该Sprite。我是否必须为每个节点创建非原子属性? 最佳答案 您可以使用SKNode的-(SKNode*)nodeAtPoint:(CGPoint)p方法(SKScene继承的类)精确定位特定节点。假设你在屏幕上有25个随机节点,你想让其中一个执行一个Action,你必须找到触摸位置,然后在该位置定位节点,然后让它执行一个Action。-(void)touchesBegan:(NSSet*)touches

ios - Cocos2d Sprite 连续

我正在尝试创建一个与游戏一起流动的背景。但是图像不是连续的。每个图像加载之间都有一个空间。我希望图像继续循环播放。这是创建Sprite的方法CCSprite*sprite=[CCSpritespriteWithFile:@"Image.png"rect:CGRectMake(0,0,960,640)];ccTexParamstp={GL_NEAREST,GL_NEAREST,GL_REPEAT,GL_REPEAT};[sprite.texturesetTexParameters:&tp];sprite.anchorPoint=ccp(1.0f/8.0f,0);sprite.positi

ios - 具有深度测试的 OpenGL 点 Sprite - 混合问题?

我正在渲染点Sprite(在iOS上使用OpenGLES2.0)作为用户的绘图笔画。我将这些点存储在顶点缓冲区对象中,这样我就需要执行深度测试,以便在提交绘图时Sprite以正确的顺序出现。我在渲染这些绘图笔触时看到了一个奇怪的效果,如下面的屏幕截图所示:请注意蓝色描边边缘周围的背景色“边框”,它绘制在绿色之上。用户在绿色笔划之后绘制了蓝色笔划,但是当重绘VBO时,蓝色笔划首先被绘制。在绘制绿色笔划时,深度测试开始,发现它应该在蓝色笔划后面,所以这样做,一些成功。在我看来是某种混合问题,或者与片段着色器中错误计算颜色有关?所有笔画的边缘都应该是透明的,但是看起来片段着色器在处理这些片段