love.graphics.setPixelEffect

Available since LÖVE 0.8.0
This function is not supported in earlier versions.
Removed in LÖVE 0.9.0
This function is not supported in that and later versions. It is renamed to love.graphics.setShader.


Sets or resets a PixelEffect as the current pixel effect. All drawing operations until the next love.graphics.setPixelEffect will be drawn using the PixelEffect object specified.

Function

Synopsis

love.graphics.setPixelEffect( pixeleffect )

Arguments

PixelEffect pixeleffect
The new pixel effect.

Returns

Nothing.

Notes

Sets the current pixel shader to a specified PixelEffect. All drawing operations until the next love.graphics.setPixelEffect will be drawn using the PixelEffect object specified.

Function

Synopsis

love.graphics.setPixelEffect( )

Arguments

None.

Returns

Nothing.

Notes

Disables pixel effects, allowing unfiltered drawing operations.

Examples

Drawing a rectangle using a pixel effect

function love.load()
    effect = love.graphics.newPixelEffect [[
        extern number time;
        vec4 effect(vec4 color, Image texture, vec2 texture_coords, vec2 pixel_coords)
        {
            return vec4((1.0+sin(time))/2.0, abs(cos(time)), abs(sin(time)), 1.0);
        }
    ]]
end

function love.draw()
    -- boring white
    love.graphics.setPixelEffect()
    love.graphics.rectangle('fill', 10,10,790,285)

    -- LOOK AT THE PRETTY COLORS!
    love.graphics.setPixelEffect(effect)
    love.graphics.rectangle('fill', 10,305,790,285)
end

local t = 0
function love.update(dt)
    t = t + dt
    effect:send("time", t)
end

See Also


Other Languages