版本: Unity 6 (6000.0)
语言英语
  • C#

ParticleSystem.Emit

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们不能接受所有提交内容,但我们会阅读用户提出的每个更改建议,并在必要时进行更新。

关闭

提交失败

由于某些原因,您的更改建议无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册

声明

public void Emit(int count);

参数

count 要发射的粒子数量。

描述

立即发射 count 个粒子。


声明

public void Emit(ParticleSystem.EmitParams emitParams, int count);

参数

emitParams 被覆盖的粒子属性。
count 要发射的粒子数量。

描述

从脚本发射一定数量的粒子。

在 emitParams 中设置属性将覆盖发射的粒子中的那些属性。任何未修改的属性将继承检查器中指定的行为。

using UnityEngine;

// In this example, we have a Particle System emitting green particles; we then emit and override some properties every 2 seconds. public class EmitExample : MonoBehaviour { public ParticleSystem system;

void Start() { // A simple particle material with no texture. Material particleMaterial = new Material(Shader.Find("Particles/Standard Unlit"));

// Create a green Particle System. var go = new GameObject("Particle System"); go.transform.Rotate(-90, 0, 0); // Rotate so the system emits upwards. system = go.AddComponent<ParticleSystem>(); go.GetComponent<ParticleSystemRenderer>().material = particleMaterial; var mainModule = system.main; mainModule.startColor = Color.green; mainModule.startSize = 0.5f;

// Every 2 secs we will emit. InvokeRepeating("DoEmit", 2.0f, 2.0f); }

void DoEmit() { // Any parameters we assign in emitParams will override the current system's when we call Emit. // Here we will override the start color and size. var emitParams = new ParticleSystem.EmitParams(); emitParams.startColor = Color.red; emitParams.startSize = 0.2f; system.Emit(emitParams, 10); system.Play(); // Continue normal emissions } }