1

不久前,我在 stackoverflow 上看到了此处链接的“Live effects cam”代码。该应用程序使用 OpenGL 转换普通的相机输入,并且可以使其看起来像图像以多种方式扭曲。我是否可以在 iOS 中使用 OpenGL 转换普通的平面摄像头馈送或图像以创建适合在 Oculus rift 上查看的几个图像,我很感兴趣?

换句话说,是否可以使用上面的代码适当地转换平面图像,以在通过 Oculus rift 观看时欺骗眼睛认为它是 3D 的?

下面是我想要实现的一个例子。我假设在这种情况下,渲染引擎可以创建 2 个视口并以稍微不同的角度渲染两个图像。但我只有一张图像或相机供稿。 在此处输入图像描述

在此处输入图像描述

4

1 回答 1

1

可以拍摄简单的 2D 图像并在 Rift 中显示它们,但图像不会有任何深度感。此外,除非我们渲染或捕获的图像具有相当大的视野,否则它们只会占用一小部分屏幕。

最简单的方法是将图像转换为 OpenGL 纹理,然后将其渲染到屏幕外缓冲区中的简单矩形几何体上,然后将屏幕外渲染传递给 Oculus SDK 以进行失真并显示在裂痕。或者,如果您知道图像的确切视野,您可以专门创建一个 Oculus 畸变矩阵来匹配图像,然后您可以将图像纹理直接传递给 SDK。

链接指向一个 C++ 示例,该示例使用 OpenCV 从网络摄像头捕获图像,将它们复制到 OpenGL,然后在 3D 场景中渲染它们,以便随后在 Oculus Rift 上显示。

于 2014-09-09T04:38:51.423 回答