love.graphics.setShader
Доступно начиная с LÖVE 0.9.0
Было переименовано из love.graphics.setPixelEffect.
Устанавливает или сбрасывает Shader как текущий пиксельный эффект или вершинные шейдеры. Все операции отрисовки до следующего вызова love.graphics.setShader будут отрисовываться с использованием объекта Shader, указанного в качестве параметра.
Функция
Синтаксис
love.graphics.setShader( shader )
Аргументы
Shader shader- Новый шейдер.
Возвращаемое значение
Ничего.
Примечания
Устанавливает текущий шейдер на указанный Shader. Все операции отрисовки до следующего вызова love.graphics.setShader будут отрисовываться с использованием объекта Shader, указанного в качестве параметра.
Функция
Синтаксис
love.graphics.setShader( )
Аргументы
Никаких.
Возвращаемое значение
Ничего.
Примечания
Отключает шейдеры, позволяя выполнять операции отрисовки без фильтров.
Примеры
Отрисовка прямоугольника с использованием шейдера пиксельного эффекта
function love.load()
effect = love.graphics.newShader [[
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.setShader()
love.graphics.rectangle('fill', 10,10,780,285)
-- LOOK AT THE PRETTY COLORS!
love.graphics.setShader(effect)
love.graphics.rectangle('fill', 10,305,780,285)
end
local t = 0
function love.update(dt)
t = t + dt
effect:send("time", t)
end См. также
© 2006–2020 LÖVE Development Team
Licensed under the GNU Free Documentation License, Version 1.3.
https://love2d.org/wiki/love.graphics.setShader