1

Additional information

  • Simple card game with more than 15 sprites on screen at a time
  • The game used to run in simulator on xcode 8 ios 10 at 55 to 60 frames per second
  • Installed xcode 9 today. Simulator running ios 11. Now the frames per second is around 5 when there are around 15 sprites
  • option on simulator for slow animations is off.
  • i am using this library https://github.com/evannnc/ActionQ which create a FIFO queue that will sequentially process any SKAction that is passed into it

Related Threads without solution

Card Game nodes: 19 fps: 5.9

RayBacker
  • 166
  • 1
  • 2
  • 12

2 Answers2

3

There is a bug in OpenGLES.framework in iOS 11/tvOS 11/watchOS 4 that causes them to skip loading the LLVM JIT and fall back to interpreting shaders. This has a severe performance impact on the Simulator since it is entirely software-rendered OpenGL (this includes CoreAnimation, SceneKit, etc).

As a temporary workaround you can copy libCoreVMClient.dylib from Beta 3 into the Xcode 9 GM and performance should be restored to what it was previously. This must be done for each platform runtime separately.

For iOS this is located at: Xcode[-beta].app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/OpenGLES.framework/libCoreVMClient.dylib

For tvOS this is located at: Xcode[-beta].app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/CoreSimulator/Profiles/Runtimes/tvOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/OpenGLES.framework/libCoreVMClient.dylib

For watchOS this is located at: Xcode[-beta].app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/CoreSimulator/Profiles/Runtimes/watchOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/OpenGLES.framework/libCoreVMClient.dylib

russbishop
  • 16,587
  • 7
  • 61
  • 74
0

As per the suggestion by @ekscrypto I installed iOS 10.3.1 simulator on Xcode 9.

Now the frames per second are around 55 and animations are fast or normal again.

RayBacker
  • 166
  • 1
  • 2
  • 12