Reactor.BillboardParticleEmitter.AddParticle C# (CSharp) Method

AddParticle() public method

public AddParticle ( Vector3 Position, Vector3 Velocity ) : void
Position Vector3
Velocity Vector3
return void
        public void AddParticle(Vector3 Position, Vector3 Velocity)
        {
            for (int p = 0; p < particleArray.Length; p += 4)
            {
                for (int thisP = 0; thisP < 4; thisP++)
                {
                    if (p == nextParticle && myLastpos != targetPos)
                    {

                        particleArray[p + thisP].Position = Position;
                        particleArray[p + thisP].Color = particleColor;

                    }

                    particleArray[p + thisP].SpriteSize = (Vector3.Distance(particleArray[p + thisP].Position, targetPos) / myScale.X);
                }
            }
            nextParticle++;

            if (nextParticle >= particleArray.Length / 4)
                nextParticle = 0;

            vb = new DynamicVertexBuffer(REngine.Instance._game.GraphicsDevice, typeof(BillboardParticleElement), 4 * partCount, BufferUsage.WriteOnly);
            vb.SetData(particleArray);
        }