Iphone 学习OpenGLES1.x
在OpenGL ES 1.x上加快速度的最快方法是什么 让我们假设我对OpenGL一无所知(这并不完全正确,但我上次使用OpenGL已经有一段时间了)。我最感兴趣的是为iPhone相关的开发学习这一点,但我也有兴趣学习它在其他平台上的工作原理 我已经找到了OpenGLES2.0编程指南这本书,但我担心它可能不是最好的方法,因为它关注的是2.0而不是1.x。我的理解是2.0与1.x不向后兼容,因此我可能会错过一些重要的概念 注意:有关学习通用OpenGL的答案,请参阅Iphone 学习OpenGLES1.x,iphone,3d,opengl-es,Iphone,3d,Opengl Es,在OpenGL ES 1.x上加快速度的最快方法是什么 让我们假设我对OpenGL一无所知(这并不完全正确,但我上次使用OpenGL已经有一段时间了)。我最感兴趣的是为iPhone相关的开发学习这一点,但我也有兴趣学习它在其他平台上的工作原理 我已经找到了OpenGLES2.0编程指南这本书,但我担心它可能不是最好的方法,因为它关注的是2.0而不是1.x。我的理解是2.0与1.x不向后兼容,因此我可能会错过一些重要的概念 注意:有关学习通用OpenGL的答案,请参阅 我发现了一些资源:
我发现了一些资源:
- 作者:Paul Martz(OpenGL基础知识的优秀复习者)
- iPhone SDK本身有一些文档
除此之外,只需了解OpenGL(或通过其他方式了解),并忘记所有“旧积垢”的东西(显示列表、即时模式、OpenGL中的但与绘制三角形没有直接关系的东西)。基本上,忘记OpenGL 3.0中声明不推荐使用的所有内容
GLES1.x适用于非常简单的设备。您拥有的是绘制几何体(顶点缓冲区)、管理纹理和设置某些固定功能状态(照明、纹理组合器)的方法。这几乎就是它的全部。在花了大量时间开发3D之后,我意识到在大多数情况下,最好的方法是通过示例学习,并随着示例不断进步 首先为自己设定一个要实现的目标(例如,实现粒子系统。这包括使用混合模式、纹理、顶点颜色、批处理和变换),然后从最简单的元素开始——绘制和旋转四边形。从那里继续添加纹理,添加更多四边形,等等。。。 在这样做的时候,你需要一些关于语法的信息——这可以在很多书中找到,但是最好的(非常无聊的)来源是规范委员会的出版物,可以在这里找到: 即使这样,你也会遇到很多问题,好吧,一旦你有问题,在这些情况下去找你最好的朋友:演示和例子
你可以在网上和苹果网站上找到许多iPhone的示例源,下载它们,复制粘贴你需要的内容,然后根据你的需要进行修改
玩得开心。在开始使用OpenGL ES时,我发现这些方法非常有用,只是想看看与普通GL相比,在处理ES时会采取什么方法 如前所述,iPhone开发者网站也提供了一些示例:
此外,Philip Rideout还发布了一本关于iPhone的OpenGL ES 1.1和2.0开发的优秀书籍,名为。我强烈推荐。仅供参考,Brad Larsons分子代码现在可用。如果您下载了iPhone SDK示例,请查看crash landing的EAGLview文件。它是GLES视图的一个非常直接的实现,可以在另一个项目中导入并非常干净地使用它。该项目中还有一个叫做Texture2d(如果我记得的话)的类,如果你想使用GLES for 2D,这个类也很有趣。我可以推荐Android吗?它很容易获得,而且你可以很快拥有一个工作模拟器。而且,据我所知,它使用v1.0
可能会有更多的教程,但即使是谷歌提供的APIDemos也介绍了OpenGLES。我当然觉得它很有用。上有一些优秀的教程,你可能想看看优秀的Jef LaMarche关于iPhone上OpenGL ES的教程 真酷,伙计!非常感谢。@Brad:感谢您在iTunes U上发布该课程。我一直在寻找OpenGL资源,这篇文章(尤其是讲座)真的很有帮助。