コード例 #1
0
        public Particle Emit(IParticleLogic logic, float life)
        {
            if (particle_pool.Count == 0)
            {
                return(null);
            }

            Particle particle = particle_pool.Dequeue();

            particle.in_pool = false;
            particle.Create(logic, life);

            return(particle);
        }
コード例 #2
0
ファイル: particle.cs プロジェクト: imclab/bubblebound
        public void Create(IParticleLogic logic, float life)
        {
            age                  = 0;
            position             = Vector3.Zero;
            velocity             = Vector3.Zero;
            rotation             = Vector3.Zero;
            scale                = Vector2.One;
            color                = Color.White;
            velocity_scale       = 0;
            is_velocity_particle = false;
            is_alive             = true;

            this.life  = life;
            this.logic = logic;

            logic.Birth(this);
        }
コード例 #3
0
ファイル: particle.cs プロジェクト: zfedoran/bubblebound
        public void Create(IParticleLogic logic, float life)
        {
            age = 0;
            position = Vector3.Zero;
            velocity = Vector3.Zero;
            rotation = Vector3.Zero;
            scale = Vector2.One;
            color = Color.White;
            velocity_scale = 0;
            is_velocity_particle = false;
            is_alive = true;

            this.life = life;
            this.logic = logic;

            logic.Birth(this);
        }
コード例 #4
0
        public Particle Emit(IParticleLogic logic, float life)
        {
            if (particle_pool.Count == 0)
                return null;

            Particle particle = particle_pool.Dequeue();
            particle.in_pool = false;
            particle.Create(logic, life);

            return particle;
        }