Difference between revisions of "love.graphics.newPixelEffect"

m
(Pixel coordinate note)
Line 38: Line 38:
 
{{param|Image|texture|The texture of the image or canvas being drawn.}}
 
{{param|Image|texture|The texture of the image or canvas being drawn.}}
 
{{param|vec2|texture_coords|Coordinates of the pixel relative to the texture. The y-axis of canvases are inverted. Coordinates (1,1) would be the top right corner of the canvas.}}
 
{{param|vec2|texture_coords|Coordinates of the pixel relative to the texture. The y-axis of canvases are inverted. Coordinates (1,1) would be the top right corner of the canvas.}}
{{param|vec2|screen_coords|Coordinates of the pixel on the screen.}}
+
{{param|vec2|screen_coords|Coordinates of the pixel on the screen. Pixel coordinates are not normalized (unlike texture coordinates)}}
 
=== Returns ===
 
=== Returns ===
 
{{param|vec4|output_color|The color of the pixel.}}
 
{{param|vec4|output_color|The color of the pixel.}}

Revision as of 21:02, 12 May 2013

Available since LÖVE 0.8.0
This function is not supported in earlier versions.

Creates a new PixelEffect object for hardware-accelerated pixel level effects.

A PixelEffect contains at least one function, named effect, which is the effect itself, but it can contain additional functions.

Function

Synopsis

pixeleffect = love.graphics.newPixelEffect( code )

Arguments

string code
The pixel effect code.

Returns

PixelEffect pixeleffect
A PixelEffect object for use in drawing operations.

Effect Language

Pixel effects are not programmed in Lua, but by using a special effect language instead. The effect language is basically GLSL 1.20 (specs) with a few aliases added for existing types:

GLSL Effect language
float number
sampler2D Image
uniform extern
texture2D(tex, uv) Texel(tex, uv)

Effect Function

Synopsis

vec4 effect( vec4 color, Image texture, vec2 texture_coords, vec2 screen_coords )

Arguments

vec4 color
The drawing color set with love.graphics.setColor.
Image texture
The texture of the image or canvas being drawn.
vec2 texture_coords
Coordinates of the pixel relative to the texture. The y-axis of canvases are inverted. Coordinates (1,1) would be the top right corner of the canvas.
vec2 screen_coords
Coordinates of the pixel on the screen. Pixel coordinates are not normalized (unlike texture coordinates)

Returns

vec4 output_color
The color of the pixel.


See Also


Other Languages