vr 第十次学习 渲染
一.Advanced Rendering Features
1.VR合成器层
OVROverlay是OVR /脚本中的一个脚本,允许您将游戏对象渲染为VR合成器图层,而不是将它们绘制到眼睛缓冲区。
2.以VR合成器图层渲染的游戏对象以合成器的帧速率渲染,而不是以应用程序帧速率渲染。他们不太容易产生抖动,他们通过镜头进行光线追踪,提高了显示在其上的纹理清晰度。这对于显示易读的文本很有用。
3.Rift和移动设备目前支持四边形,立方体贴图和柱面合成器图层。
4. 覆盖样本:Unity样本框架的渲染示例中包含说明如何在UI中使用四合一和圆柱VR合成图层的样本。
5.所有图层类型都支持立体渲染和单面渲染,但立体渲染在大多数情况下仅适用于立方体贴图。立体视图渲染叠加层需要两个纹理,通过在Inspector的OVROverlay的纹理字段中将Size设置为2来指定。
6.应用程序可以将三个合成器图层添加到场景中。每个场景可以使用不超过一个柱面和一个立方体贴图合成器图层。
7.您可以使用OVRRTOverlayConnector将纹理渲染到合成器图层。
8.有两种主要类型的叠加,世界锁定和头部锁定。两种叠加类型都使用特殊的每像素失真着色器,可直接从经过变换的四边形纹理中进行采样。世界锁定叠加使用TimeWarp,类似于非叠加内容,并且不太易于产生抖动。头部锁定叠加层绕过TimeWarp并完全遵循头部运动。
9.默认情况下,VR合成器图层在眼睛缓冲区前显示为覆盖图。要将它们放置在眼睛缓冲区后面,请在检查器中将“当前覆盖类型”设置为“底层”。
10.基本用法
将OVROverlay.cs附加到游戏对象。
指定当前重叠形状:
四路(Rift和移动)
Cubemap(Rift和Mobile)
气缸(仅限手机
指定OVROverlay纹理。如果将其保留为“无”(默认),则将使用渲染器材质的主纹理(如果可用)。
11. 禁用所有合成器图层(覆盖图和底图),
按顺序启用它们以设置您希望它们出现的顺序,从而使前面的覆盖层和前面的覆盖层首先启用。
12.请注意眼睛缓冲区的虚线部分,指示OVROverlay在哪里“冲出了一个洞”,以便在场景几何体后面显示天空盒。在此场景中,四边形将设置为“当前覆盖类型:叠加”和立方体贴图将被设置为当前覆盖类型:底层。
13.两者都将被禁用,然后启用四重叠,然后启用天空盒。请注意,如果场景中的立方体贴图是透明的,我们需要使用OVRUnderlayTransparentOccluder,这对于alpha小于1的任何底层都是必需的。
14.如果它是立体视觉,我们需要指定两个纹理,并将大小设置为2.圆柱体和偏移立方体贴图覆盖(仅限移动)圆柱体重叠的中心游戏对象用作圆柱体的中心。圆柱体的尺寸在transform.scale中进行编码,