Unity3D
中标准资产的图像效果非常棒。他们使我们的游戏美丽。但遗憾的是,我无法使用Google VR(Cardboard)SDK。
当我在没有图像效果的情况下运行游戏时,一切都很好。
当我使用Image Effects运行它时,它会合并左眼和右眼相机。
我试过了:
我想让我的游戏看起来很漂亮。任何帮助将不胜感激:)
答案 0 :(得分:4)
在浏览了几个链接后,我收到了以下链接: Google Cardboard Unity 5 no stereoscopy
虽然它是在不同的背景下回答的,但它解决了当前的问题。关闭主摄像头的 StereoControllers 中的直接渲染帮助我解决了这个问题。
在堆栈溢出中可以做的最糟糕的事情是回答他自己的问题。但我希望这篇文章能够保持活力,以便未来的开发人员不会遇到这个问题。
将Image Effects组件保持在StereoController组件上方 在某些情况下似乎有所帮助。
答案 1 :(得分:1)
编辑(Unity 5.6和GVR SDK 1.3):
在最新的SDK中,您只需将Image Effects放在主摄像头上即可。但是,它们在Unity的播放模式下不可见(因为它依赖于SDK创建的两个独立的摄像头)。在构建中,它使用Unity的原生VR渲染并正确呈现图像效果。但要小心,一些图像效果会导致视觉瑕疵/闪烁/ ......
(https://forum.unity3d.com/threads/image-effects-with-daydream-work-but-lead-to-flickering.443478/) (https://github.com/googlevr/gvr-unity-sdk/issues/448)
原始回答
关闭 MainCamera 的 StereoController 上的直接渲染复选框可解决此问题。还要确保在两台摄像机上复制ImageEffects 并保持它们的顺序相同。
Unity中的ImageEffects仅在使用它们的相机绘制到全屏时才能正常工作。使用纸板(或一般的VR),你有2个摄像头,只能画出屏幕的一半,从而打破了ImageEffects。它导致其中一只眼睛被两个屏幕拉伸。
问题可以通过首先绘制到表示全屏的临时纹理并随后将该纹理分割到两个相机来解决。请记住,这会对性能产生影响(除了ImageEffects的成本之外)。
进一步参考:https://developers.google.com/vr/unity/guide#deferred_rendering_and_image_effects