public float rateOverDistanceMultiplier;
Описание
Изменить множитель коэффициента зависимости от расстояния.
Это более эффективно, чем доступ ко всей кривой, если вы хотите изменить только общий множитель скорости.
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(ParticleSystem))]
public class ExampleClass : MonoBehaviour
{
private ParticleSystem ps;
public float hSliderValue = 5.0f;
void Start()
{
ps = GetComponent<ParticleSystem>();
var main = ps.main;
main.simulationSpace = ParticleSystemSimulationSpace.World;
var shape = ps.shape;
shape.enabled = false;
var emission = ps.emission;
emission.rateOverTime = 0.0f;
// добавляем сферу, чтобы мы могли видеть нашу трансформируемую позицию по мере ее перемещения
var sphere = GameObject.CreatePrimitive(PrimitiveType.Sphere);
sphere.transform.parent = ps.transform;
}
void Update()
{
var emission = ps.emission;
emission.rateOverDistanceMultiplier = hSliderValue;
ps.transform.position = new Vector3(Mathf.Sin(Time.time) * 2.0f, 0.0f, 0.0f);
}
void OnGUI()
{
hSliderValue = GUI.HorizontalSlider(new Rect(25, 45, 100, 30), hSliderValue, 1.0f, 20.0f);
}
}