Unity 3d:无法在另一个GameObject上启用组件

时间:2014-03-01 12:33:01

标签: unity3d unityscript

当我按暂停时,我想模糊背景。 我的模糊效果是在主要相机游戏对象中的模糊效果脚本上。 主要问题是,当我按下暂停时,它会给出错误“对象引用未设置为对象的实例”,但我已将GameObject设置为Unity中的变量。

以下是我在剧本中关于这一切的内容;

var camera:GameObject;

这位于Update()

if(paused == true){
    camera.GetComponent(BlurEffect).enabled = true;
}
if(paused == false){
    camera.GetComponent(BlurEffect).enabled = false;
}

1 个答案:

答案 0 :(得分:2)

似乎camera变量未初始化(“未设置为对象的实例”)。使用Camera.main获取对主摄像头的引用。 Update()中的以下行应该足够了:

Camera.main.GetComponent(BlurEffect).enabled = paused;