0

我正在尝试从完全没有 OpenGL 或 OpenGL ES 经验的情况下学习 WebGL,而且我很难弄清楚每个函数调用背后发生了什么,更确切地说是 GPU 究竟发生了什么。我尝试遵循一些基本教程,并且它们可以正常工作,但是当我尝试在 WebGL 中做一些更复杂的事情时,我经常会遇到奇怪的问题。就像我应该链接着色器时一样,当为一个纹理调用 texImage2D 两次时会发生什么等。

我在网上搜索了高低,信息充其量是稀缺的,主要是它仍在开发中,还很少有浏览器支持它。如果没有任何完整的文档,它是否与 OpenGL ES 足够相似,可以依赖它作为参考?

4

1 回答 1

2

WebGL 和 OpenGL ES 2.0 非常相似。尤其是如果您只是想弄清楚特定函数的作用,OpenGL ES 和普通的 OpenGL 文档可能会提供有用的见解。但是,特别是在查看 OpenGL 文档时,请记住某些功能可能不存在,功能签名可能略有不同,等等。

就个人而言,我发现Joe Groff 的介绍很有帮助。他从 OpenGL 2.0 开始研究现代技术,并取消了 OpenGL ES 2.0 和 WebGL 没有任何方法并且不再真正使用的旧功能。

除此之外,我发现WebGL 规范本身实际上是一个不错的参考。它链接到 OpenGL ES 2.0 手册页,并描述了它们略有不同的功能。

我认为您已经运行了一些示例,因此您已经知道设置的基本过程。(基本上只是:获取上下文、设置视口、编译着色器。)如果没有,learningwebgl.com上有一组很好的教程专门处理 WebGL。(不过,我发现 Joe Groff 的介绍更全面地介绍了 3D 和 OpenGL 概念。)

剩下的只是 JavaScript。:)

于 2010-12-05T09:53:31.597 回答