2012-06-27 31 views
0

我需要在iOS设备上的屏幕上移动大量像素。做这件事最有效的方法是什么?操纵iOS上的大量像素

到目前为止我使用的是glTexSubImage2D(),但我不知道这是否可以做得更快。我注意到OpenGL ES 2.0不支持像素缓冲区,但Core Video似乎有一个像素缓冲区。我可以使用它吗?或者,也许有一个OpenGL的Apple扩展,可以帮助我实现类似的功能(我认为在WWDC 2012视频中看到了一个关于客户端存储扩展的非常模糊的提及,但我找不到任何相关文档)?任何其他方式,我可以加快这一点?

我主要关心的是glTexSubImage2D()复制了我发送的所有像素。理想情况下,我想跳过复制数据的这一步,因为我已经准备好了......

回答

2

您可能想到的客户端存储扩展是CVOpenGLESTextureCacheCreateTextureFromImage;完整的教程是here。这绝对是将数据传送到GPU的最快方式。

令人沮丧的是,我在苹果文档中唯一能找到的地方是iOS 4.3 to 5.0 API Differences文档 - 快速搜索CVOpenGLESTextureCache.h