【发布时间】:2020-10-01 18:26:39
【问题描述】:
我在场景中添加了后期处理,一切正常。我正在使用单个相机。每当我单击场景视图中的任意位置时,我都会在控制台中收到以下警告:
当与内置渲染管道一起使用时,后处理包需要 在全屏相机上使用。请注意,使用相机 视口可能会导致视觉伪影或某些事情不起作用。 UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr) (在 /Users/builduser/buildslave/unity/build/Modules/IMGUI/GUIUtility.cs:187)
当我进入播放模式时,警告不会显示。仅在场景编辑器中。
我在 Mac 上使用 Unity 2019.4.0f1 的内置渲染管道。我已经进入了生成警告的 Unity 后处理代码(他们的代码,不是我的)。我可以看到相机矩形被检索,并且因为 X 和 Y 值大于零,所以记录了警告。有问题的 Unity 代码如下所示:
{
Rect r = m_Camera.rect;
if(Mathf.Abs(r.x) > 1e-6f || Mathf.Abs(r.y) > 1e-6f || Mathf.Abs(1.0f - r.width) > 1e-6f || Mathf.Abs(1.0f - r.height) > 1e-6f)
{
Debug.LogWarning("When used with builtin render pipeline, Postprocessing package expects to be used on a fullscreen Camera.\nPlease note that using Camera viewport may result in visual artefacts or some things not working.", m_Camera);
}
}
同样,上面的代码是 Unity 代码,我不想更改它。上面r 的x 和y 值有时大于0,有时则不大于0。
我已验证检查器中的相机视口设置为 x:0,y:0,w:1,h:1。我已验证我的场景中只有一台摄像机。
关于 SO 有一个类似的问题和答案。但是用户正在使用通用渲染管道,对他有用的解决方案似乎不适用于我。我查看了图形下的项目设置,似乎没有一个选项与解决方案相对应。
【问题讨论】:
-
嗯,没有任何反馈的问题上的-1是非常没用的。我的问题是真诚地撰写的。如果你希望我以后少打扰你,你应该说出你认为这个问题有问题的原因。