2011-11-25 86 views
0

我在使用OpenGL ES 1.1和2.0的iPhone发展之间的十字路口。我计划创建2D应用程序和简单的3D应用程序。为了简单起见,我应该使用1.1吗?或者这会在iOS的某个时候停止使用?我想知道2.0中的着色器在制作简单程序方面是否比1.1中的着色器更有用。请告诉我每个的优点。谢谢。OpenGL ES 1.1在iOS中会过时吗?

回答

2

我会说使用2.0开始的决定性原因是复杂的影响,2.0是一个通配符在这个问题上,着色器是在显卡内运行的软件的一点点(好吧,并不总是如此),并有在运行时影响个别像素的能力。在1.1有很多你可以做,但大部分的你影响纹理的所有像素的时间,影响到个别像素,你要的纹理相结合,并在一段时间后只是有东西,你不能做1.1。

现在,如果你不需要复杂的效果,你可以启动和使用1.1,但让我告诉你你的旅程:

在年初1.1将更加容易,的glTranslatef,glRotatef,glScalef等不保存你有时间并且允许你轻松地开始操作对象。

但是,你有没有进步,并开始做更复杂的事情,你学习矩阵操作,说有一个例程,有点慢,因为你做了很多tranlastes,旋转等等。所以你读了主题,你可以学习所有这些操作合并成一个矩阵,于是你开始做自己的矩阵计算funcs中,并开始使用glMultMatrixf多,过一会它只是更容易总是glMultMatrixf,因为你可以后期添加的东西,而不必重新编写代码。

在这一点上,你没有理由使用1.1,从glMultMatrixf去2.0是一个很小的一步,并且已经从着色器获取全新的世界。

所以,如果你不需要大的影响,并渴望去,好吗使用1.1。 其他任何只是直接到2.0。

免责声明 是的,这是一个简化,但我做了一个自己的旅程。

1

2.0具有可编程管线

这看起来是不是非常多的信息(如当我第一次开始我很喜欢:“嗯好吗?”),但它确实意味着很多。

在让您充分利用顶点

在小我所做的事情(3D)的转换可以很容易地通过1.1自动管理

现在的变换的控制,但它是很酷的超过他们完全控制在2.0

如果你在学习上我建议在第一次制作节目的iDevices同时支持1.1和2.0所以如果你需要顶点的完全控制,你可以得到更多的经验和体会到opengles

opengles那么2.0是要走的路,否则1.1应该罚款