【问题标题】:How to load IOSurface in OpenGL for Mac OS X Snow Leopard application如何在 OpenGL 中为 Mac OS X Snow Leopard 应用程序加载 IOSurface
【发布时间】:2010-12-04 01:49:38
【问题描述】:

Apple 在 10.6 Mac OS X 固件更新中添加了新的 IOSurface 框架。由于这个框架相对较新,我还没有找到关于如何正确使用它的急需文档。

我想知道 StackOverflow 上是否有人可以帮助我使用 IOSurface。

无论如何,这就是我想做的。现在我的应用程序非常简单,因此我可以熟悉 IOSurfaces。所以本质上,我想将图像加载到 IOSurface 纹理中并在自定义 OpenGLView 中显示。这就是我目前的目标。

为了使这更简单,我只在 IOSurface 中加载一种常量颜色。我此时的主要目标是创建一个 IOSurface 引用并在自定义 OpenGL 视图中显示。

请帮帮我 -IOSurface声明声明 - 将数据加载到 IOSurface - 以及在 OpenGL 中绘制 IOSurface 的语法。

非常感谢。

附言

IOSurface 就像一个内存管理器,在应用程序之间传递图形数据或类似的东西。

我已经尝试过 Google IOSurface。最有帮助的网站是

http://cocoadhoc.blogspot.com/2009/09/hidden-gems-of-snow-leopard-iosurface.html

但是,当我尝试编译示例代码时,我遇到了一个编译器错误,指出未声明 QTVisualContextRef 和其他 QuickTime 变量。我通过自动更新获得了最新版本的 Quick Time。

【问题讨论】:

    标签: objective-c macos frameworks


    【解决方案1】:

    IOSurface API 与 Core Video 的 CVPixelBuffer 非常相似,已记录在案,因此您可以先查看 CVPixelBuffer documentation 并与 IOSurfaceAPI.h 进行比较。

    要将 OpenGL 纹理绑定到 IOSurface,请参阅 <OpenGL/CGLIOSurface.h> 中定义的 CGLtexImageIOSurface2D 函数。

    【讨论】:

      猜你喜欢
      • 2011-09-13
      • 2011-10-26
      • 1970-01-01
      • 1970-01-01
      • 2010-12-03
      • 1970-01-01
      • 1970-01-01
      • 2014-09-19
      相关资源
      最近更新 更多