NullReferenceException: Object reference not set to an instance of an object
UnityEngine.Rendering.PostProcessing.AmbientOcclusion.IsEnabledAndSupported (UnityEngine.Rendering.PostProcessing.PostProcessRenderContext context) (at Library/PackageCache/com.unity.postprocessing@3.0.3/PostProcessing/Runtime/Effects/AmbientOcclusion.cs:182)
多贴几个关键字方便后来人搜索吧。
需要在动态添加PostProcessLayer后,主动调用Init。
var layer = gameObject.AddComponent<PostProcessLayer>();
processResources = Resources.Load<PostProcessResources>("PostProcessResources");
layer.Init(processResources);
PostProcessResources是库中自带的一个资源文件,路径为:Packages/Post Processing/PostProcessing/PostProcessResources.asset
参考:

本文探讨如何在Unity中动态添加PostProcessLayer后,正确调用Init方法以避免AmbientOcclusion组件引发的NullReferenceException。重点在于资源加载和初始化步骤的调试与修复。
990

被折叠的 条评论
为什么被折叠?



