Opengl es OpenGL游戏应该使用UIScreen nativeBounds还是iPhone6 plus的bounds?

Opengl es OpenGL游戏应该使用UIScreen nativeBounds还是iPhone6 plus的bounds?,opengl-es,ios8,iphone-6-plus,Opengl Es,Ios8,Iphone 6 Plus,我的游戏引擎目前使用UIScreen边界作为其渲染分辨率。在iPhone6 plus上,报告的虚拟分辨率为2208x1242 在模拟器上,这也是UIScreen nativeBounds报告的相同分辨率 然而,在真正的设备上,nativeBounds将是1920x1080,我不确定在iPhone6 plus上使用哪一个进行正确的OpenGL渲染,也找不到关于它的官方文档 哪一个是正确的?使用nativeBounds和nativeScale确定要为帧缓冲区或可绘制文件设置的大小。(不要硬核大小。)

我的游戏引擎目前使用UIScreen边界作为其渲染分辨率。在iPhone6 plus上,报告的虚拟分辨率为2208x1242

在模拟器上,这也是UIScreen nativeBounds报告的相同分辨率

然而,在真正的设备上,nativeBounds将是1920x1080,我不确定在iPhone6 plus上使用哪一个进行正确的OpenGL渲染,也找不到关于它的官方文档


哪一个是正确的?

使用
nativeBounds
nativeScale
确定要为帧缓冲区或可绘制文件设置的大小。(不要硬核大小。)


对于GPU密集、性能敏感的工作(使用OpenGL ES或Metal的游戏),您确实希望最小化通过片段着色器的像素数。一个很好的方法是不渲染比显示硬件更多的像素

我现在可以确认,在真实设备上,使用[UIScreen bounds]报告的2208x1242虚拟分辨率时,会生成正确的渲染效果。

谢谢。是的,我认为只有渲染本机分辨率才能获得最佳性能,但如果没有真实设备,我无法在nativeBounds/Scale上测试我的引擎。使用虚拟分辨率是否仍能产生正确的输出,或者生成的图像是否会被裁剪?