当前位置:  开发笔记 > 编程语言 > 正文

如何在iPhone上实现全景抗锯齿

如何解决《如何在iPhone上实现全景抗锯齿》经验,为你挑选了2个好方法。

我想在iPhone上的OpenGL ES应用程序上实现FSAA.

目前,我通过将场景渲染为两倍于屏幕宽度和高度的纹理来实现此目的.然后我使用nice函数:

void glDrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height);

将图像调整为屏幕分辨率.

有一个更好的方法吗?

更新赏金补充我想知道,鉴于它现在是2010年1月,是否有更好的方法在v3.1 3GS手机上做到这一点,等等.



1> ehdv..:

对于GT赛车在PSP上,开发者通过移动图像来回每帧一个象素实现类似于抗混叠的效果(示范可以在这里找到:http://www.gtplanet.net/why-gran-turismo -psp-looks-so-good /)所以如果iPhone不支持您正在寻找的东西,那么这是一个选项.



2> benzado..:

从iOS 4.0开始,通过Apple扩展到OpenGL直接支持全屏抗锯齿.基本概念与您已经在做的类似:将场景渲染到更大的帧缓冲区,然后将其复制到屏幕大小的帧缓冲区,然后将该缓冲区复制到屏幕上.不同之处在于,复制/采样操作不是创建纹理并将其渲染到四边形上,而是通过单个函数调用(具体而言glResolveMultisampleFramebufferAPPLE())执行.

有关如何设置缓冲区和修改绘图代码的详细信息,您可以阅读为OpenGL ES 1.1编写的Gando Games博客上的教程 ; Apple的开发者论坛也有一个说明同样的事情.

感谢Bersaelor 在另一个SO问题中指出这一点.

推荐阅读
喜生-Da
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有