# File lib/extras/as_particles.rb, line 51
        def draw()
                @burst.times{emitParticle()} if(@ticks%@rate == 0)
                
                @tex.bind
                w, h = @tex.w, @tex.h
                GL.Begin(GL::QUADS)
                        @parts.each do|part|
                                v = @func.value(part, @ticks - part.t)
                                
                                l = life(part)
                                li = 1.0 - l
                                GL.Color(
                                        @colora[0]*li + @colorb[0]*l,
                                        @colora[1]*li + @colorb[1]*l,
                                        @colora[2]*li + @colorb[2]*l,
                                        @colora[3]*li + @colorb[3]*l
                                )
                                
                                r = (@smax - @smin)*l + @smin
                                
                                GL.TexCoord(0, 0); GL.Vertex(v.x - r, v.y - r)
                                GL.TexCoord(w, 0); GL.Vertex(v.x + r, v.y - r)
                                GL.TexCoord(w, h); GL.Vertex(v.x + r, v.y + r)
                                GL.TexCoord(0, h); GL.Vertex(v.x - r, v.y + r)
                        end
                GL.End()
                
                @ticks += 1
        end