如果您使用了MRTK Oculus Integration并且在构建您的应用程序时遇到了Agora Unity SDK导致渲染问题,尝试按照以下步骤操作:
打开Unity编辑器并切换到项目中的“Scenes”文件夹中的场景。
点击Scene视图中的“Main Camera”对象。
在Inspector视图中,选择“Add Component”并添加“Script”的组件。
把下面的代码粘贴到Script窗口中:
using UnityEngine;
using UnityEngine.Rendering;
public class CameraRenderOrder : MonoBehaviour
{
public int renderOrder = -10;
public CameraEvent cameraEvent = CameraEvent.BeforeForwardOpaque;
private void OnEnable()
{
RenderPipelineManager.beginCameraRender += BeginCameraRender;
}
private void OnDisable()
{
RenderPipelineManager.beginCameraRender -= BeginCameraRender;
}
private void BeginCameraRender(ScriptableRenderContext context, Camera camera)
{
if (camera == GetComponent())
{
var customRenderSettings = new RenderPassEvent
{
cameraEvent = cameraEvent,
passIndex = 1 << renderOrder
};
var renderProfilingSampler = new ProfilingSampler("CameraRenderOrder.BeginCameraRender");
context.ExecuteCommandBufferAsync(null, renderProfilingSampler);
context.SetupCameraProperties(camera);
context.StartMultiEye(camera);
var cmd = CommandBufferPool.Get("CameraRenderOrder");
context.ExecuteCommandBufferAsync(cmd, renderProfilingSampler);
cmd.Clear();
context.DrawSkybox(camera);
context.Submit();
CommandBufferPool.Release(cmd);
}
}
}
按“Ctrl + S”保存脚本。
在菜单栏中选择“GameObject”>“Create Empty”。
选中新创建的GameObject对象并将其改名为“CameraRenderOrder”。
添加上述脚本组件。
将“CameraRenderOrder”游戏对象添加到场