love.graphics.newPixelEffect
Доступно начиная с LÖVE 0.8.0 и удалено в LÖVE 0.9.0
Оно было переименовано в love.graphics.newShader.
Создаёт новый объект PixelEffect для ускоренных аппаратных эффектов на уровне пикселей.
Объект PixelEffect содержит как минимум одну функцию, названную effect, которая представляет сам эффект, но может содержать и дополнительные функции.
Функция
Синтаксис
pixeleffect = love.graphics.newPixelEffect( code )
Аргументы
string code- Код пиксельного эффекта.
Возвращаемое значение
PixelEffect pixeleffect- Объект PixelEffect для использования в операциях рисования.
Язык эффектов
Пиксельные эффекты программируются не на Lua, а с помощью специального языка эффектов. Язык эффектов — это в основном GLSL 1.20 (спецификации) с несколькими добавленными псевдонимами для существующих типов:
| GLSL | Язык эффектов |
|---|---|
| float | число |
| sampler2D | Изображение |
| uniform | extern |
| texture2D(tex, uv) | Texel(tex, uv) |
Функция эффекта
Синтаксис
vec4 effect( vec4 color, Image texture, vec2 texture_coords, vec2 screen_coords )
Аргументы
vec4 color- Цвет рисования, установленный с помощью love.graphics.setColor.
Image texture- Текстура изображения или холста, который рисуется.
vec2 texture_coords- Координаты пикселя относительно текстуры. Ось y холстов инвертирована. Координаты (1,1) будут в верхнем правом углу холста.
vec2 screen_coords- Координаты пикселя на экране. Координаты пикселей не нормализованы (в отличие от текстурных координат). (0.5, 0.5) — это нижний левый угол экрана.
Возвращаемое значение
vec4 output_color- Цвет пикселя.
См. также
© 2006–2020 LÖVE Development Team
Licensed under the GNU Free Documentation License, Version 1.3.
https://love2d.org/wiki/love.graphics.newPixelEffect