示例#1
0
 void PutExplosion(Vector3 pos)
 {
     if (m_enable_shockwave)
     {
         DSShockwaveManager.AddEntity(pos);
     }
     if (m_enable_radialblur)
     {
         DSRadialBlurManager.AddEntity(pos);
     }
     if (m_enable_particles)
     {
         CSParticle[] additional = new CSParticle[1024];
         for (int i = 0; i < additional.Length; ++i)
         {
             additional[i].position = pos + (new Vector3(R(), R(), R())).normalized * R(0.1f);
             additional[i].velocity = (new Vector3(R(), R(), R())).normalized * R(20.0f);
         }
         m_pset.AddParticles(additional);
     }
     if (m_enable_light)
     {
         Instantiate(m_light, pos, Quaternion.identity);
     }
 }
示例#2
0
    void Update()
    {
        CameraControl();

        if (Input.GetKeyUp(KeyCode.Space))
        {
            showGUI = !showGUI;
        }
        {
            CSParticle[] additional = new CSParticle[particlesParFrame];
            Vector3      center     = new Vector3(0.0f, 4.0f, 0.0f);
            for (int i = 0; i < additional.Length; ++i)
            {
                Vector3 r = new Vector3(Random.Range(-1.0f, 1.0f), Random.Range(-1.0f, 1.0f), Random.Range(-1.0f, 1.0f));
                additional[i].position = center + r * 0.5f;
                additional[i].velocity = r * 1.5f;
            }
            cspset.AddParticles(additional);
            cspset.m_decelerate = 0.9925f;
        }
    }