iphone - OpenGL ES、OpenFrameworks、Cinder和IOS创意开发

标签 iphone ios opengl-es openframeworks cinder

我正处于一个艰难的选择之中。 我想学习一门语言,它可以帮助我创建具有强大艺术/创意/图形组件的应用程序,并将其用于我客户的商业项目。

我的第一选择是 OpenGL ES,我认为它是通过的“标准”方式。 但是,与此同时,我发现了这个网站:http://www.creativeapplications.net/我在那里找到了许多很酷的 iOS 应用程序,大多数是使用 OpenFramewors 构建的和 Cinder .

我的问题是:为什么选择这 2 个“包装器”而不是 OpenGL?我需要了解好处和坏处。

我不确定使用这些框架我能否以一种简单(和标准)的方式(对于 OpenGL)UIKit/Cocoa 和图形进行混合。目前我仍然更喜欢 OpenGL,因为我知道这是 apple 建议的方式(我的意思是...由 Apple 提出)并且我确信我也可以为我的客户利用它。虽然我不确定使用 OF 和 Cinder 我是否可以完全管理 UIKit 和 Cocoa 而无需技巧。

最佳答案

如 Ruben 所述,使用框架的好处在于您无需重新发明轮子。 OpenGL 没有提供很多您通常需要的类:向量、矩阵、相机、颜色、图像等以及您需要使用它们的方法:归一化、算术、叉积等

当然,您可以在 OpenGL 中实现所有这些,但如果有人以前做过,为什么不直接利用它呢?您对框架或库的选择将取决于您喜欢的实现方式。 OF 将以不同于 Cinder 的方式做事,而 Cinder 不同于另一个库。

您不必使用框架提供的所有内容。如果您不喜欢基本应用程序(例如 Cinder),您可以创建自己的上下文,或者不喜欢的,只需使用框架的 3d 数学库、图像库或任何其他您想要的部分。只需包含您想要的相关 header 即可。

或者,如果您愿意,也可以只使用 3d 数学库,并且完全摆脱框架。这使您可以更好地控制渲染管道,并有可能减小应用程序的大小。

最终您的选择将取决于它的功能和您对特定样式的偏好。我建议使用您熟悉并已在生产中使用的框架或库(除非您只是在玩弄东西)。文档也很重要。如果文档/资源不是很好,我会回避使用某些东西。

当然,如果您想了解来龙去脉(这绝不是坏主意),请务必编写您自己的库。

关于iphone - OpenGL ES、OpenFrameworks、Cinder和IOS创意开发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5776839/

相关文章:

android - 渲染时,淡出纹理在相同的实体纹理上看起来很糟糕

ios - iOS 7 和 SDK 3.10 更新后,Facebook 应用程序停止发布好友照片

ios - Parse.com 存储 boolean 数组

iphone - iOS:在不添加新 View 的情况下在 UIScrollView View 之间切换?

ios - 带有文本 Xcode 的标签拉伸(stretch)

ios - 检查 MonoTouch 中 iOS 类(而不是方法)的可用性

android - 选择在 android 上使用 min3d 渲染的对象

opengl-es - 如何选择GL_STREAM_DRAW还是GL_DYNAMIC_DRAW?

iphone - 你能在iPhone上使用C open(const char* name, int flag)函数吗?

ios - 如何确定当前的 iPhone/设备型号?