我看到如何 设置 基于渐变的粒子颜色(例如this& this)但我找不到关于如何 获取 颜色的任何内容。
我有一个粒子系统,其起始颜色设置为随机渐变。我试过......
Color myColor = myParticleSystem.main.startColor.color
...但无论渐变颜色如何,它总是会返回黑色。
我在文档或论坛中没有看到如何实际获取随机选择的颜色。
使用Unity 2017.3。感谢。
答案 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
更改。