# Shader

Available since LÖVE 0.9.0
This type is not supported in earlier versions.

A Shader is used for advanced hardware-accelerated pixel or vertex manipulation. These effects are written in a language based on GLSL (OpenGL Shading Language) with a few things simplified for easier coding.

Potential uses for shaders include HDR/bloom, motion blur, grayscale/invert/sepia/any kind of color effect, reflection/refraction, distortions, bump mapping, and much more!

## Constructors

love.graphics.newShader | Creates a new Shader. | 0.9.0 |

## Functions

Object:type | Gets the type of the object as a string. |  |
Object:typeOf | Checks whether an object is of a certain type. |  |
Shader:getExternVariable | Gets information about an 'extern' ('uniform') variable in the Shader. | 0.9.2 |
Shader:getWarnings | Gets warning and error messages (if any). | 0.9.0 |
Shader:send | Sends one or more values to the shader. | 0.9.0 |

## Supertypes

- Object

## See Also

- love.graphics
- love.graphics.setShader

##

Category:

- Types