Unity 6.3
0 онлайн 62 гостей 3 в системе
Вход

MonoBehaviour.OnParticleTrigger()

Описание

OnParticleTrigger вызывается, когда любые частицы в Particle System соответствуют условиям в модуле триггера.

Это может быть использовано для уничтожения или модификации частиц, которые находятся внутри или за пределами столкновения.

using UnityEngine;
using System.Collections;
using System.Collections.Generic;

public class TriggerScript : MonoBehaviour { void OnParticleTrigger() { ParticleSystem ps = GetComponent<ParticleSystem>();

// particles List<ParticleSystem.Particle> enter = new List<ParticleSystem.Particle>(); List<ParticleSystem.Particle> exit = new List<ParticleSystem.Particle>();

// get int numEnter = ps.GetTriggerParticles(ParticleSystemTriggerEventType.Enter, enter); int numExit = ps.GetTriggerParticles(ParticleSystemTriggerEventType.Exit, exit);

// iterate for (int i = 0; i < numEnter; i++) { ParticleSystem.Particle p = enter[i]; p.startColor = new Color32(255, 0, 0, 255); enter[i] = p; } for (int i = 0; i < numExit; i++) { ParticleSystem.Particle p = exit[i]; p.startColor = new Color32(0, 255, 0, 255); exit[i] = p; }

// set ps.SetTriggerParticles(ParticleSystemTriggerEventType.Enter, enter); ps.SetTriggerParticles(ParticleSystemTriggerEventType.Exit, exit); } }

Для получения подробной информации обо всех столкновениях, вызванных ParticleSystem, ParticlePhysicsExtensions.GetTriggerParticles, необходимо использовать массив Particle.