love.graphics.newParticleSystem

Creates a new ParticleSystem.

O.png This function can be slow if it is called repeatedly, such as from love.update or love.draw. If you need to use a specific resource often, create it once and store it somewhere it can be reused!  


Function

Synopsis

system = love.graphics.newParticleSystem( image, buffer )

Arguments

Image image
The image to use.
number buffer
The max number of particles at the same time.

Returns

ParticleSystem system
A new ParticleSystem.

Function

Available since LÖVE 0.9.1
This variant is not supported in earlier versions.

Synopsis

system = love.graphics.newParticleSystem( texture, buffer )

Arguments

Texture texture
The texture (Image or Canvas) to use.
number buffer
The max number of particles at the same time.

Returns

ParticleSystem system
A new ParticleSystem.

Examples

Creation and usage of a particle system

You can use the LÖVE logo as an example image.

function love.load()
	local img = love.graphics.newImage('logo.png')
 
	psystem = love.graphics.newParticleSystem(img, 32)
	psystem:setParticleLifetime(2, 5) -- Particles live at least 2s and at most 5s.
	psystem:setEmissionRate(5)
	psystem:setSizeVariation(1)
	psystem:setLinearAcceleration(-20, -20, 20, 20) -- Random movement in all directions.
	psystem:setColors(255, 255, 255, 255, 255, 255, 255, 0) -- Fade to transparency.
end
 
function love.draw()
	-- Draw the particle system at the center of the game window.
	love.graphics.draw(psystem, love.graphics.getWidth() * 0.5, love.graphics.getHeight() * 0.5)
end
 
function love.update(dt)
	psystem:update(dt)
end

See Also


Other Languages