Difference between revisions of "love.graphics.newPixelEffect"

(Better (?) explanation of the effect code)
(formatting)
Line 15: Line 15:
  
 
== Effect Language ==
 
== Effect Language ==
Pixel effects are not programmed in Lua, but by using a special effect language instead. The effect language is basically [[http://www.opengl.org/sdk/docs/manglsl/|GLSL 1.20]] ([[http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.20.8.pdf|specs]]) with a few things renamed:
+
Pixel effects are not programmed in Lua, but by using a special effect language instead. The effect language is basically [http://www.opengl.org/sdk/docs/manglsl/ GLSL 1.20] ([http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.20.8.pdf specs]) with a few things renamed:
  
{|
+
{|cellpadding="5"
!GLSL
+
!GLSL               || Effect language
!Effect language
 
 
|-
 
|-
|float
+
|float             || number
|number
 
 
|-
 
|-
|sampler2D
+
|sampler2D         || Image
|Image
 
 
|-
 
|-
|uniform
+
|uniform           || extern
|extern
 
 
|-
 
|-
|texture2D(sampler2D tex, vec2 st)
+
|texture2D(tex, uv) || Texel(tex, uv)
|Texel(Image tex, vec2 st)
 
 
|}
 
|}
  

Revision as of 17:46, 1 May 2012

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 things renamed:

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.
vec2 screen_coords
Coordinates of the pixel on the screen.

Returns

vec4 output_color
The color of the pixel.


See Also

Other Languages