【发布时间】:2015-05-02 14:59:16
【问题描述】:
这个问题是无法解决的还是什么?我不需要提供任何代码示例,它对任何人都不起作用!我不知道它怎么可能,你只需要试试这个:GetComponent<DepthOfField>().enabled = false;
假设我们有一个MainCamera 对象,我们将其附加一个DepthOfField 图像效果脚本。我们创建另一个名为whatever 的脚本并将其附加到MainCamera,在whatever 脚本中,我们只是叫这个:
void Start() {
GetComponent<DepthOfField>().enabled = false;
}
它不应该工作吗?它没有,即使脚本附加到主摄像头,它也会返回空引用异常。它可以修复吗?如果是的话,我需要它!
【问题讨论】:
-
问题可能是 DepthOfField 是来自 javascript / unityscript 的类,而您正试图从 C# 访问它。如果我没记错的话,存在一些依赖问题,它允许您从 JS 访问 C# 类,或者反过来,但不能同时访问两者。在较新的统一版本中,所有后期效果都被重写为 C# 类。因此,将您的自定义组件
whatever重写为 Javascript/Unityscript 组件可以解决您的问题。 -
我强烈建议您在发布之前使用谷歌,类似的问题在这里answers.unity3d.com/questions/707774/…,其中一个答案会将您重定向到适合您问题的解决方案。
标签: c# unity3d gameobject