AR(增强现实)似乎是当今所有 iO 开发人员都在关注的东西。我正在玩一个非常经典的宠物项目,用纹理滚动骰子,如果可能的话,将相机流放在骰子面上。我在最后一部分面临一些问题,我有一些问题要问专家:
获取视频流需要 AV Foundation :AVCaptureVideoDataOutputSampleBufferDelegate
获取图像缓冲区,然后构建UIImage
使用 Quartz 函数,如CGBitmapContextCreate
. 这在http://www.benjaminloulier.com/articles/ios4-and-direct-access-to-the-camera或苹果 AV Foundation Programming Guide 中进行了演示(参见https://developer.apple.com/library /ios/#documentation/AudioVideo/Conceptual/AVFoundationPG/Articles/04_MediaCapture.html#//apple_ref/doc/uid/TP40010188-CH5-SW30)
然后我可以像为“静止”图像所做的那样创建纹理,并将其与GLKBaseEffect
(或着色器?)一起使用。
问题 1:GLKBaseEffect
看起来非常好和简单,但我应该瞄准 OpenGL 2 和着色器吗?
现在来自苹果的 RosyWriter 演示使用 Core VideoCVOpenGLESTextureCacheCreateTextureFromImage
功能直接绑定纹理,无需创建中介UIImage
。这是 - 如演示描述中所述 - IOS 5 中的新功能。
问题 2:这是映射纹理的更好方法吗?
问题 3:有一些有趣的框架,比如 GPUImage,甚至 3D Gaming 框架也可以使用。有人对使用这些有什么反馈吗?到目前为止,苹果提供的框架对我来说似乎很完整。
非常感谢 !