我希望能够在 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;
}
立体渲染要求每只眼睛的 View /投影矩阵都不同。眼睛被有效地视为单独的相机,稍微偏移以反射(reflect)用户的 IPD。所以,游戏循环是这样运行的:
- Update() 所有游戏对象
- Render() 左眼的所有内容
- Render() 右眼的所有内容
- 在主显示器上渲染()游戏 View (如果启用)。
- 转到1
每次 VR 更新时,您总是会获得至少两个渲染。
关于unity-game-engine - Unity + Oculus Rift : show both eyes?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32568512/