我希望能够在Unity 5中看到两只眼睛的输出。使用最新的OVR插件,unity只显示一只眼睛。同样,它甚至对耳机也呈现单眼效果。

我喜欢一个示例,该示例使我在左眼上显示一个蓝色矩形,在右眼上显示一个红色矩形,并在主显示器上同时看到(蓝色和红色)。

有什么建议吗?

最佳答案

解决了一段时间。基本上,您每帧获得2个渲染和1个更新。

(伪码)

int Eye=0;

Update()
{
    // reset to left eye for this frame
    Eye=0;
}

Render()
{
  // generate different content based on which view
  // (eye, editor game view) is being rendering
  switch(Eye){
    case 0: renderLeft(); break;
    case 1: renderRight(); break;
    default: renderSomethingInEditor();
  }

  // increment to next view, will be used by next render in this frame.
  ++Eye;
}


立体声渲染要求每只眼睛的视图/投影矩阵不同。眼睛被有效地视为单独的摄像头,它们稍微偏移以反映用户的IPD。因此,游戏循环运行如下:


Update()所有GameObjects
Render()左眼的一切
Render()一切适合右眼
主显示器上的Render()游戏视图(如果启用)。
转到1


在VR中,每次更新您将始终获得至少两个渲染。

09-20 23:44