类型或命名空间名称`PostProcessing'命名空间中不存在`UnityEngine.Rendering'

时间:2018-05-17 20:55:22

标签: unity3d

有人知道如何解决这个问题吗?从Unity资源商店导入Cinemachine后出现此错误。我使用的是Unity 2018.1.0f2,2017.3.1f1

没有问题

错误

名称空间PostProcessing

中不存在类型或命名空间名称UnityEngine.Rendering

4 个答案:

答案 0 :(得分:6)

使用Unity 2018.2-

转到窗口>打包管理器 单击全部选项卡 查找后期处理并导入 找到Cinemachine并导入

答案 1 :(得分:2)

这应该起作用-对我有用! 转到窗口>程序包管理器。搜索后处理,然后单击安装。等待下载。关闭包管理器。完成!

答案 2 :(得分:2)

我发现解决此错误的方法是这样的:
1.转到窗口->包管理器
2.选择后处理
3.单击版本并选择旧版本
4.点击最新

答案 3 :(得分:0)

我希望其他人对此有一个答案。我遇到了同样的问题,在导入3D游戏套件时在Unity 2018.1.0中导入Cinemachine。首先,我无法找到任何关于导入3D游戏套件时出现的许多错误的支持,包括后期处理'名称空间错误即使是Game Kit的文档和教程也没有提及它对Cinemachine,TextMesh Pro和后处理软件包的要求。无论如何,到目前为止,我已设法修复所有其他错误,除了错误CS0246:类型或命名空间名称PostProcess ...'错误。我尝试下载并导入后处理和所有其他相关软件包,但错误仍然存​​在。

我发现的唯一提到的问题是来自CinemachinePostProcessing.cs代码本身的注释。在顶部它说:

"注意:如果您遇到类似的错误: "类型或命名空间名称`PostProcessing'在命名空间中不存在" 这是因为PostProcessing v2模块已从项目中删除。

要使错误消失,您可以: 1 - 下载PostProcessing V2并将其安装到您的项目中 要么 2 - 进入PlayerSettings / OtherSettings并删除UNITY_POST_PROCESSING_STACK_V2的脚本定义

- 我无法找到任何" PostProcessing V2"任何地方(也不在资产商店),所以我希望它指的是Unity Technologies最新的后处理堆栈。

我会尝试发布我找到的任何解决方案,但是现在我会在网上找到更多的建议(不是来自Unity):

- 有人说发生此错误是因为PostProcessing尚未添加到Unity的DLL中,您必须: "放置使用UnityEngine.PostProcessing访问的脚本;在PostProcessing文件夹中。"

- 这可能会导致Cinemachine出现问题,因为它是Cinemachine访问UnityEngine.Rendering.PostProcessing的脚本。 (*请注意,该人说" UnityEngine.PostProcessing",但它是" UnityEngine.Rendering.PostProcessing" Cinemachine访问。)Cinemachine脚本不在&#中34; PostProcessing文件夹"而且我不知道你是否可以将它们移动到" PostProcessing文件夹"没有造成更多错误。

- 另外,另一位消息人士表示,“后处理”错误'是因为Cinemachine并没有“联系在一起”。在编辑器的包管理器中正确使用。他们说"软件包管理器并没有将Cinemachine视为已安装的软件包"。据推测,这个问题可以在Unity的项目经理中解决。

- 另一个人说"如果删除postfx目录[Cinemachine]并在根目录下重新运行包,它就会开始工作。"

我会尝试修复错误,希望此信息可以帮助我或其他人。

*更新:摆脱后期处理'使用软件包管理器(更新使用的软件包)出错,我遇到了来自Cinemachine Axis脚本的4个新错误(不包含`m_InvertInput'的定义)虽然Unity论坛坚持重新启动编辑器可以解决问题,没有重新启动和刷新的数量有帮助。我不得不注释掉引用m_InvertInput的行。修复它,但现在只有1个新错误,GameKit项目要求ProBuilder资产。导入后,该错误就会消失。但是现在Probuilder脚本中有7个错误阻止了项目的运行,所以就这样......