Version: 5.3 (switch to 5.4b)
ЯзыкEnglish
  • C#
  • JS

Язык программирования

Выберите подходящий для вас язык программирования. Все примеры кода будут представлены на выбранном языке.

ParticleEmitter.particles

Предложить изменения

Успех!

Благодарим вас за то, что вы помогаете нам улучшить качество документации по Unity. Однако, мы не можем принять любой перевод. Мы проверяем каждый предложенный вами вариант перевода и принимаем его только если он соответствует оригиналу.

Закрыть

Ошибка внесения изменений

По определённым причинам предложенный вами перевод не может быть принят. Пожалуйста <a>попробуйте снова</a> через пару минут. И выражаем вам свою благодарность за то, что вы уделяете время, чтобы улучшить документацию по Unity.

Закрыть

Отменить

Руководство
public var particles: Particle[];
public Particle[] particles;

Описание

Возвращает массив копий всех частиц и назначает его в качестве текущих частиц.

Обратите внимание, что после внесения изменений в массив частиц, вы должны снова применить его к particleEmitter, чтобы увидеть изменения. Частицы со значением энергии равном нулю или ниже будут уничтожены при их назначении. Таким образом, создавая новый массив частиц, вы должны явно задать энергию всех частиц.

var emitter: ParticleEmitter;

function Start() { emitter = GetComponent.<ParticleEmitter>(); }

function LateUpdate () { // extract the particles var particles = emitter.particles; for (var i = 0; i < particles.Length; i++) { // Move the particles up and down on a sinus curve var yPosition = Mathf.Sin (Time.time) * Time.deltaTime; particles[i].position += Vector3 (0, yPosition, 0); // make the particles red particles[i].color = Color.red; // modify the size on a sinus curve particles[i].size = Mathf.Sin (Time.time) * 0.2; } // copy them back to the particle emitter emitter.particles = particles; }
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public ParticleEmitter emitter; void Start() { emitter = GetComponent<ParticleEmitter>(); } void LateUpdate() { Particle[] particles = emitter.particles; int i = 0; while (i < particles.Length) { float yPosition = Mathf.Sin(Time.time) * Time.deltaTime; particles[i].position += new Vector3(0, yPosition, 0); particles[i].color = Color.red; particles[i].size = Mathf.Sin(Time.time) * 0.2F; i++; } emitter.particles = particles; } }