获取粒子渐变颜色

时间:2018-02-16 19:04:23

标签: unity3d unity5

我看到如何 设置 基于渐变的粒子颜色(例如this& this)但我找不到关于如何 获取 颜色的任何内容。

我有一个粒子系统,其起始颜色设置为随机渐变。我试过......

Color myColor = myParticleSystem.main.startColor.color

...但无论渐变颜色如何,它总是会返回黑色。

我在文档或论坛中没有看到如何实际获取随机选择的颜色。

使用Unity 2017.3。感谢。

1 个答案:

答案 0 :(得分:2)

目前,我们无法从脚本中读取MinMaxCurve,如下所示:https://blogs.unity3d.com/2016/04/20/particle-system-modules-faq/(向下滚动到缓解痛苦部分)。

但是,您的代码不会返回MinMaxCurve,而是可以通过检查器或脚本设置Start Color类型的Color

例如,如果您在场景中创建了一个Particle System游戏对象,并附加了这个简单的脚本:

using UnityEngine;

public class ParticlesTest : MonoBehaviour {

    ParticleSystem myParticleSystem;
    public Color myColor;

    private void Awake() {
        myParticleSystem = GetComponent<ParticleSystem>();      
    }

    private void Update() {
        myColor = myParticleSystem.main.startColor.color;
    }
}

在播放模式中更改myColor的{​​{1}}值时,您可以看到Start Color更改。