Xcode不会使用SpriteKit测量GPU利用率

时间:2015-11-27 08:29:05

标签: ios objective-c xcode swift sprite-kit

我已经在iPhone 6上为SpriteKit(旋转飞机)推出了Xcode的模板项目。令我惊讶的是,Xcode报告没有GPU利用率,同时屏幕上有800个精灵节点,FPS从60降到30 。 我以为SpriteKit使用GPU进行渲染。它是Xcode还是我和我缺乏知识?

Xcode

1 个答案:

答案 0 :(得分:4)

FPS调试指标和GPU报告仅适用于OpenGL ES游戏。 Sprite Kit现在支持Metal设备(任何带有A7芯片的设备,所以iPhone 5S +),这意味着它不会使用OpenGL ES。因此,解决方法是简单地告诉Sprite Kit使用OpenGL ES而不是Metal,这应该使FPS Debug Gauge和GPU Report再次工作。 请在发布游戏前切换回Metal!以下是来自here的引用,详细说明如何切换到OpenGL。

  

默认情况下,SpriteKit和SceneKit在iOS 9和OS X中使用Metal进行渲染   但是,El Capitan有一个使用OpenGL的工具。

     

要做到这一点:    1.编辑应用程序的Info.plist    2.添加PrefersOpenGL键,其bool值为YES

     

重要说明:为了获得最佳性能,请在SpriteKit中使用金属渲染   默认情况下启用SceneKit。设置PrefersOpenGL渲染键是   除非出于其他原因确定是必要的,否则不推荐。

有关FPS调试指标和GPU报告的更多信息,请参阅here

请记得向Apple报告此错误。