Beispiel #1
0
    void OnParticleTrigger()
    {
        int enterCount = ParticlePhysicsExtensions.GetTriggerParticles(ps, ParticleSystemTriggerEventType.Enter, enter);
        int exitCount  = ParticlePhysicsExtensions.GetTriggerParticles(ps, ParticleSystemTriggerEventType.Exit, exit);

        Debug.Log("Trigger,Enter:" + enterCount + ",Exit:" + exitCount);
        Debug.Log("EnterList:" + enter.Count + ",ExitList:" + exit.Count);

        for (int i = 0; i < enter.Count; i++)
        {
            ParticleSystem.Particle p = enter[i];
            p.startColor = Color.green;
            enter[i]     = p;
        }

        for (int i = 0; i < exit.Count; i++)
        {
            ParticleSystem.Particle p = exit[i];
            p.startColor = Color.red;
            exit[i]      = p;
        }

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