Version: 2018.2

ParticleSystem.BurstConstructor

Switch to Manual
public ParticleSystem.Burst (float _time, short _count);
public ParticleSystem.Burst (float _time, short _minCount, short _maxCount);
public ParticleSystem.Burst (float _time, short _minCount, short _maxCount, int _cycleCount, float _repeatInterval);
public ParticleSystem.Burst (float _time, ParticleSystem.MinMaxCurve _count);
public ParticleSystem.Burst (float _time, ParticleSystem.MinMaxCurve _count, int _cycleCount, float _repeatInterval);

Parameters

_timeTime to emit the burst.
_minCountMinimum number of particles to emit.
_maxCountMaximum number of particles to emit.
_countМаксимальное количество частиц, которые можно испустить.
_cycleCountNumber of times to play the burst. (0 means indefinitely).
_repeatIntervalHow often to repeat the burst, in seconds.

Description

Construct a new Burst with a time and count.

See Also: ParticleSystem.emissionModule.SetBursts, ParticleSystem.emissionModule.GetBursts.

using UnityEngine;
using System.Collections;

// Create a looping particle system. // At 0, 1 and 2 secs the number of particles in each loop // are changed from 10, to 50, then to 100. // The loops repeat after 3 seconds.

public class ExampleClass : MonoBehaviour { public Material part;

void Start() { // create a red ground plane GameObject ground = GameObject.CreatePrimitive(PrimitiveType.Quad); ground.transform.rotation = Quaternion.Euler(90, 0, 0); ground.transform.localScale = new Vector3(10, 10, 10); ground.GetComponent<Renderer>().material.color = Color.red;

// rotate the GameObject so particles rise up in the y-axis gameObject.transform.rotation = Quaternion.Euler(-90, 0, 0); gameObject.AddComponent<ParticleSystem>();

// create the ParticleSystem ParticleSystem ps; ps = gameObject.GetComponent<ParticleSystem>();

ps.Stop();

// set the MainModule default values var main = ps.main; main.startColor = Color.yellow; main.duration = 3;

// create a cone and change it into a cylinder var shape = ps.shape; shape.shapeType = ParticleSystemShapeType.Cone; shape.angle = 0.0f; shape.radius = 2.0f; shape.radiusThickness = 0.0f;

// use the passed in material gameObject.GetComponent<ParticleSystemRenderer>().material = part;

// set up the emission to generate particles var em = ps.emission; em.enabled = true; em.rateOverTime = 0;

em.SetBursts( new ParticleSystem.Burst[] { new ParticleSystem.Burst(0.0f, 10), new ParticleSystem.Burst(1.0f, 50), new ParticleSystem.Burst(2.0f, 100) });

ps.Play(); } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961