Как изменить цвет эффекта частиц? - PullRequest
0 голосов
/ 30 мая 2019

Как я могу изменить цвет системы частиц так, чтобы он совпадал с цветом моего игрока?

Я пытался найти в некоторых уроках, как это сделать, и я получил это решение:

GameObject effectBlow = Instantiate(blowOut, transform.position, Quaternion.identity) as GameObject;
effectBlow.gameObject.GetComponent<ParticleSystem>().startColor = material.material.color;

Но теперь мой Unity жалуется на этот код и говорит, что он устарел и, конечно, цвета не меняются в игре.

Я не знаю, как его изменить, может кто-нибудь мне помочь?

1 Ответ

0 голосов
/ 30 мая 2019

startColor свойство устарело, поэтому его нельзя использовать таким образом, попробуйте этот код

        GameObject effectBlow = Instantiate(blowOut, transform.position, Quaternion.identity) as GameObject;
        var main = effectBlow.gameObject.GetComponent<ParticleSystem>().main;
        main.startColor = player.GetComponent<Renderer>().material.color;

Итак, что он в основном делает, это создает переменную main , и основной модуль фактического экземпляра gameobject's частиц будет ссылаться на него из той главной переменной, которую мы используем startColor свойство для изменения цвета игрока игрового объекта

Для получения дополнительной информации проверьте это: https://docs.unity3d.com/ScriptReference/ParticleSystem-main.html

...