首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenGL或OpenGL ES

OpenGL或OpenGL ES
EN

Stack Overflow用户
提问于 2011-01-27 19:36:17
回答 3查看 3.8K关注 0票数 10

我应该学些什么?OpenGL 4.1还是OpenGL ES 2.0?

我将使用Qt开发桌面应用程序,但我也可能在几个月后开始开发移动应用程序。我对3D、3D数学等一无所知,我宁愿花100美元买一本好书,也不愿花一周的时间去挖掘网站和反复试验。

据我所知,OpenGL 4.1的一个问题是还没有书(最近的书是关于OpenGL 3.3或4.0的),而有关于OpenGL ES 2.0的书。

另一方面,从我天真的角度来看,OpenGL 4.1似乎是OpenGL ES 2.0 +的补充,所以看起来更容易/更好的方法是先学习OpenGL ES 2.0,然后再学习着色器语言,等等

请不要告诉我使用NeHe (人们普遍认为它充满了坏的/旧的实践),榴莲教程,等等。

谢谢

EN

回答 3

Stack Overflow用户

发布于 2011-01-27 20:03:42

是的,一定要从OpenGL ES 2.0开始。实际上,我会说从WebGL开始(它几乎类似于OpenGL ES2.0)。here上的公共维基是一个很好的起点。关于WebGL的好处是,你不必处理编译/链接之类的事情,而且你避免了很多样板代码来设置很多东西。所以你可以专注于实际的绘图(这才是真正有趣的地方:)。如果你有一本OpenGL ES2.0的书,它应该仍然可以很好地映射到WebGL。

此外,repository中有很多演示程序,您可以立即运行它们(然后单击浏览器的“查看源代码”直接跳转到代码中)。从简单的开始: image-texture-test,Colored,Textured

这些示例,再加上您的OpenGL ES2.0书籍,应该可以让您立即入门。玩得开心!

编辑:我可能还应该指出,如果你决定选择OpenGL 4.1路线,你可能不需要等待OpenGL 4.1的书。一本OpenGL 3.3或4.0的书就可以了。

票数 9
EN

Stack Overflow用户

发布于 2011-01-28 15:20:27

OpenGL版本通常会在之前的版本中添加新的功能,所以我想说学习OpenGL 4.1实际上就是学习OpenGL 3.0,因为基础是相同的,特别是如果你开始3d编程的话。

OpenGL ES 2.0是OpenGL 3.x的一个子集。

考虑到这些“事实”,我想说学习OpenGL 3+或OpenGL ES 2+大致相同,但在细节上有所不同。

请注意,根据您的桌面平台(操作系统、显卡),您可能无法访问OpenGL 3实施。

在桌面上实施OpenGL ES 2也可能不可用。

Shezan Baig建议开始使用WebGL可能会对你有所帮助,因为它委托了OpenGL初始化。浏览器的问题-一些人甚至使用implement WebGL over DirectX来提高其可用性。

我的建议是,在你学习的同时,你应该专注于3d原理、算法和数学。这是最难做到的。实现“细节”与OpenGL (ES或非ES)或DirectX或其他任何东西没有太大区别。

更准确地说,我建议您从最熟悉的编程语言开始。我使用这种语言的OpenGL 1.x/2.x :这些旧版本的GL包含很多辅助函数(glBegin/glVertex/glEnd;glMultMatrix等)。在3.x+中被“弃用”的。使用这些,你将在测试算法时更加“高效”。

3d编程有很多东西,你可以找到已经成为freely available的参考书,并选择对你的用例感兴趣的信息。

票数 2
EN

Stack Overflow用户

发布于 2011-11-18 05:44:16

是的,使用GLES2。

1)可移植。

2)即使对于PC来说,也要遵循GLES2的方式。(除非您的高级和需要GL3/4功能)。

3)你想使用着色器period和GLES2来学习正确的方法。

请记住,OpenGL在windows上很糟糕。司机通常都是垃圾。以上网本为例,它支持HLSL2.0,但不支持GLSL着色器,只运行GL-1.3

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4815805

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档