android - 在 OS X 中开始 OpenGL 3.0+ 编程(再次),针对多个平台

标签 android ios macos graphics opengl-3

如果这个主题是重复的,我很抱歉,但我在任何地方都找不到我要问的信息。

我已经开始学习 OpenGL,几年前我什至使用 OpenGL ES 1.1 为 iOS 制作了一个非常简单的游戏。但是,我已经放弃它以支持其他项目。我检查的最后一个 OpenGL 版本是 2.1,坦率地说,在放弃它以全职 iOS 工作之前,我只是检查了一下,并没有太在意它。

现在,我又想捡起来了。不过我有的书有OpenGL 2.5(红皮书)、OpenGL ES 2.0(没机会打开)和OpenGL Shading language(记不清是哪本了,是同时买的我买了小红书)。我读到 OpenGL 3.0 及更高版本显着改变了渲染管道,使其完全可编程,这就是为什么它放弃了对旧功能的支持,同时也摆脱了过时和膨胀的功能。

我有两台装有 OS X 10.7.4 的计算机、一台装有 GeForce 9400M 的 Macbook 和一台装有 ATI Radeon HD 6750 Mobility 的 iMac,我认为它们都符合 OpenGL 3.0(至少在大多数功能方面)。

鉴于所有这些信息,以下是我的主要问题:

  1. 有什么好的 OpenGL 3.0+ 入门教程吗?
  2. 是否有适用于 OS X 的 OpenGL 3.0 + 的良好入门教程?我所能找到的只是固定管道的过时教程
  3. 由于 OpenGL 流水线的转变,我已经拥有的书籍是否对我有帮助,或者我是否需要购买它们的最新版本?
  4. 我有没有误解或遗漏了什么?

我的目标主要是 OS X、iOS 和 Android,因此我对特定于平台的资源和信息不感兴趣。我知道每个平台都有自己的 OpenGL API 实现和扩展,但我希望尽可能独立于平台。我没有在我的问题中指定任何语言,因为我精通 C/C++/ObjC 并且 Android OpenGL Java 实现与我听到的没有什么不同。

时间不是问题,我的数学/编程技能也不是问题。而且我也不想先学习如何使用 OpenGL 的任何包装器/框架,然后再学习 OpenGL 的基础知识,然后再学习它的抽象概念和框架。

在此先感谢您提供的有关此事的所有信息和指示。

最佳答案

问题 3 的答案:

一本关于 OpenGL ES 2.0 的优秀书籍是 OpenGL ES 2.0 Programming Guide作者:Aaftab Munshi。由于 OpenGL ES 2.0 大致是 OpenGL 3.0+ 的一个子集,因此本书也可能对 OpenGL 3.0+ 开发人员有用。

没有关于 OpenGL 3.0+ 的真正好书。目前可用的 OpenGL 红皮书版本主要集中在旧式已弃用的 OpenGL 编程上,因此不予推荐。 会有一个new edition 2013 年 1 月发布的 OpenGL 红皮书 包含 85% 的新 Material ,并专注于现代 OpenGL 编程。在那之前等待红皮书。

关于android - 在 OS X 中开始 OpenGL 3.0+ 编程(再次),针对多个平台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11377308/

相关文章:

android - 为什么一个按钮可以添加多个ClickListener

android - 单击通知操作时如何取消改造 2 请求?

ios - ios 中的 Tumblr 回调函数

ios - 无法在 Xcode 中分发适用于 iOS 的 Flutter 应用程序 - "ipa in the package contains an invalid character(s)"

objective-c - 如何以编程方式隐藏Mac应用程序中的所有应用程序?

java - boolean 值已更改但 if 语句无法识别

java - 从 Android 项目中的包中检索类列表

ios - 如何在表格 View 单元格中的 View 内设置 View 的角半径?

ios - 在 Swift 中调用 CGPatternCreate

ios - Objective C,在堆栈跟踪中不涉及我的应用程序时处理崩溃报告