作为 10.6 Mac OS X 公司更新的一部分,Apple 添加了新的 IOSurface 框架。由于这个框架相对较新,我还没有找到关于如何正确使用它的急需文档。
我想知道 StackOverflow 上是否有人可以帮助我使用 IOSurface。
无论如何,这就是我想做的。现在我的应用程序非常简单,因此我可以熟悉 IOSurfaces。所以基本上,我想将图像加载到 IOSurface 纹理中并在自定义 OpenGLView 中显示。这就是我目前的目标。
为了使这更简单,我只在 IOSurface 中加载一种恒定颜色。我此时的主要目标是创建一个 IOSurface 引用并在自定义 OpenGL View 中显示。
请帮我
-IOSurface 声明语句
- 将数据加载到 IOSurface
- 以及在 OpenGL 中绘制 IOSurface 的语法。
非常感激。
附言
IOSurface 就像一个内存管理器,它在应用程序或类似的东西之间传递图形数据。
我试过谷歌 IOSurface。最有用的网站是
http://cocoadhoc.blogspot.com/2009/09/hidden-gems-of-snow-leopard-iosurface.html
但是,当我尝试编译示例代码时,出现编译器错误,指出未声明 QTVisualContextRef 和其他 QuickTime 变量。我通过自动更新获得了最新版本的 Quick Time。
最佳答案
IOSurface API 与 Core Video 的 CVPixelBuffer 非常相似,已记录在案,因此您可以先查看 CVPixelBuffer documentation 并与 IOSurfaceAPI.h 进行比较。
要将 OpenGL 纹理绑定(bind)到 IOSurface,请参阅 CGLTexImageIOSurface2D 函数,该函数在 <OpenGL/CGLIOSurface.h>
中定义。
关于objective-c - 如何在 OpenGL 中为 Mac OS X Snow Leopard 应用程序加载 IOSurface,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1522151/