简体   繁体   中英

Can I set the iOS Graphics API to 'OpenGLES2' specifically for the iPhone 6s, and Automatic for everything else?

My Unity iOS game is running into strange rendering issues (extremely low performance and bizarre drawing glitches) specifically on the iPhone 6s. Upon some googling it appears to be closely related to Unity Slow performance on iPhone 6 Plus .

I am willing to do do the change - that is, specify OpenGLES2 in the graphics API - and it may very well fix the problem with the iPhone 6s devices. But my concern is that it will be affecting the other devices (ie the majority) negatively. Perhaps it will run fine on iPhone 6s but now the performance will be worse on other devices that were actually working well with Metal.

So ideally, I want to set OpenGLES2 only for the iPhone 6s, and set it to Automatic for everything else because it was working fine that way.

The Graphics APIs is a priority list. If I set it as

OpenGLES2
OpenGLES3
Metal

It may fix the iPhone 6s, but I fear that the other devices will pick OpenGLES2 which may or may not make them perform worse. Then, if I set it as

Metal
OpenGLES2
OpenGLES3

I suspect that it wouldn't fix anything because then the iPhone 6s will simply pick Metal, which is presumably what it has been doing all this time.

What should I do in this scenario? Can I set the iOS Graphics API to 'OpenGLES2' specifically for the iPhone 6s, and Automatic for everything else?

To clarify, yes: I could simply test the new settings on all devices, but I would rather not change anything at all for them. I only want to change it for the iPhone 6s, because changing the Graphics API seems like a rather big deal.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM