2016-04-27 76 views
0

我试图只允许粒子系统发射粒子时,可见的东西。如果布尔名为有效为真,则粒子系统知道何时开始。代码我认为将为此工作如下:阻止团结粒子发射

 if (avail) 
    { 

     GetComponent<MeshRenderer>().enabled = true; 
     GetComponent<ParticleSystem>().enableEmission = true; 
     print("Mesh enabled"); 

    } 

但是,这失败了。我也试过:

 if (avail) 
    { 

     GetComponent<MeshRenderer>().enabled = true; 
     GetComponent<ParticleSystem>().emission.enabled = true; 
     print("Mesh enabled"); 

    } 

但是,这也失败了。在我搜索过的每个网站上,这两个“解决方案”出现了,但它们不适合我。第一个例子说“这种做法已经过时了”,第二个例子说我不能把“emission.enabled”设置成一个变量,因为它是一个吸气器而不是设置器。任何帮助解决这一点非常感谢。

回答

1

我没有统一,现在开了,但我认为

GetComponent<ParticleSystem>().Stop(); 

是你所需要的。您可以重新启动使用

GetComponent<ParticleSystem>().Play(); 

同样的系统,如果你这样做的时候,你应该考虑让你的粒子系统类变量。