Canvas:clear

Available since LÖVE 0.8.0
It has been renamed from Framebuffer:clear.

Clears content of a Canvas.

When called without arguments, the Canvas will be cleared with color rgba = {0,0,0,0}, i.e. it will be fully transparent. If called with color parameters (be it numbers or a color table), the alpha component may be omitted in which case it defaults to 255 (fully opaque).

It's possible to clear a section of the canvas with love.graphics.setScissor.

Function

Synopsis

Canvas:clear( )

Arguments

None.

Returns

Nothing.

Function

Synopsis

Canvas:clear( red, green, blue, alpha )

Arguments

number red
Red component of the clear color (0-255).
number green
Green component of the clear color (0-255).
number blue
Blue component of the clear color (0-255).
number alpha (255)
Alpha component of the clear color (0-255).

Returns

Nothing.

Function

Synopsis

Canvas:clear( rgba )

Arguments

table rgba
A sequence with the red, green, blue and alpha values as numbers (alpha may be ommitted).

Returns

Nothing.

Examples

Clear canvas before drawing

If the c-key is pressed the canvas will be cleared before drawing a new line on the screen.

local canvas = love.graphics.newCanvas();
local clear;
function love.update()
    -- Use an anonymous function to draw lines on our canvas.
    canvas:renderTo(function()
        if clear then canvas:clear(); end   -- Clear the canvas before drawing lines.
        love.graphics.setColor(love.math.random(255), 0, 0);
        love.graphics.line(0, 0, love.math.random(0, love.graphics.getWidth()), love.math.random(0, love.graphics.getHeight()));
    end);
end

function love.draw()
    love.graphics.setColor(255, 255, 255);
    love.graphics.draw(canvas);
end

function love.keypressed(key)
    if key == 'c' then clear = not clear; end
end

See Also

Other Languages