Unity + Oculus Rift:如何同时显示两只眼睛?

3
我希望能在Unity 5中看到双眼的输出结果。使用最新的OVR插件,Unity只显示一个眼睛的输出结果。而且,它似乎只渲染单眼视图到头戴式显示器上。
我想要一个示例,让我可以在左眼上显示蓝色矩形,在右眼上显示红色矩形,并在主监视器上同时看到两个颜色(蓝色和红色)。
有什么建议吗?
1个回答

2

我之前已经解决了这个问题。基本上,每帧您可以获得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。因此,游戏循环如下运行:
  1. Update() 所有游戏对象
  2. 为左眼渲染所有内容
  3. 为右眼渲染所有内容
  4. 如果启用,则在主显示器上呈现游戏视图。
  5. 返回步骤1
在VR中,您将始终每次更新获得至少两次渲染。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接