如何在 Unity 中读取和保存粒子系统的起始颜色
How to read and save start color of a Particle System in Unity
假设我有一个粒子系统,其起始颜色在两种颜色之间随机选择,比如黑色和白色。现在我知道可以使用 MinMaxGradient 更改颜色。但是如何保存原始的起始颜色以便以后使用。
使用 ParticleSystem.MainModule.startColor.
这将 return 具有 colorMin 属性 的 MinMaxGradient。这是您应该保存在 class 字段中以供将来重用的内容。例如,如果您在 Start 方法中初始化您的 ParticleSystem:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MyScript : MonoBehaviour
{
//declare class fields for your particle system and start color
private ParticleSystem myParticleSystem;
private Color particleStartColor;
void Start()
{
//...
myParticleSystem = GetComponent<ParticleSystem>();
ParticleSystem.MinMaxGradient myMinMaxGradient = myParticleSystem.main.startColor;
particleStartColor = myMinMaxGradient.colorMin;
//...
}
}
假设我有一个粒子系统,其起始颜色在两种颜色之间随机选择,比如黑色和白色。现在我知道可以使用 MinMaxGradient 更改颜色。但是如何保存原始的起始颜色以便以后使用。
使用 ParticleSystem.MainModule.startColor.
这将 return 具有 colorMin 属性 的 MinMaxGradient。这是您应该保存在 class 字段中以供将来重用的内容。例如,如果您在 Start 方法中初始化您的 ParticleSystem:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MyScript : MonoBehaviour
{
//declare class fields for your particle system and start color
private ParticleSystem myParticleSystem;
private Color particleStartColor;
void Start()
{
//...
myParticleSystem = GetComponent<ParticleSystem>();
ParticleSystem.MinMaxGradient myMinMaxGradient = myParticleSystem.main.startColor;
particleStartColor = myMinMaxGradient.colorMin;
//...
}
}