2014-03-01 26 views
2

我正在做一个游戏,它涉及沙尘暴。我决定基本的概念是,我会制作一张看起来大致像沙尘暴的图像,然后用一些粒子/其他任何东西来装饰它。一个图像与阿尔法落后spritekit

我在第一步遇到了问题。我为了测试目的扔了一个简单的图像: Poorly Made Sandstorm

我补充说,我的游戏,和FPS下降了60%。我对一张图片的效果感到惊讶,但我并不太担心。我将图像的分辨率降低了一半,并且还有很多滞后。

Spritekit/iOS在处理中等大小的图片时真的很糟糕吗?我读到另一个模拟器渲染不好的问题,但这不能成为整个问题。

有没有希望得到这个渲染而不削减我的表现?粒子效果很好,其他运行速度都在60fps以上,但是这个图像的添加显然是资源消耗严重。

编辑:我测试了我的游戏在我的手机上,我没有滞后。显然,模拟器在渲染方面真的很糟糕。同时,我对如何加速表现感到好奇,因为显然存在一些滞后现象。

回答

1

我并不是SpriteKit的专家,但我对纯色的核心动画和分层有相似的经验。

问题是,即使是对于“不透明”部分的图像,它也会在每次移动时在其下面的所有子图层上引入重绘呼叫。首先检查是否这实际上是一个问题,然后尝试这个,看看能否改善:

  1. SKCropNode可以防止用于渲染之下元素
  2. 平铺图像所以只有该边界具有阿尔法
  3. 快照下面的图层。
  4. 减少渲染节点的数量,隐藏“沙尘暴下”的节点。

而且你应该使用真实设备来测试游戏的性能,你不能依赖模拟器。

+0

我会尝试这些,我可能不会回到这一点,但您的信息似乎相当准确,有帮助。每个解决方案似乎都有其他一些问题,但我可以解决这些问题。最重要的是你的分析对我来说似乎是对的虽然,我刚刚更新了我的问题,但我发现了一些问题 – IAmTheAg