{{newin|[[0.10.0]]|100|type=function}}
Sends one or more colors to a special (''extern'' / ''uniform'') vec3 or vec4 variable inside the shader. The color components must be in the range of [0, 1]. The colors are gamma-corrected if global [[love.graphics.isGammaCorrect|gamma-correction]] is enabled.

Extern variables must be marked using the ''extern'' keyword, e.g.

<source lang="glsl">
extern vec4 Color;
</source>

The corresponding sendColor call would be

<source lang="lua">
shader:sendColor("Color", {r, g, b, a})
</source>


Extern variables can be accessed in both the Vertex and Pixel stages of a shader, as long as the variable is declared in each.

In versions prior to [[11.0]], color component values were within the range of 0 to 255 instead of 0 to 1.

== Function ==
=== Synopsis ===
<source lang="lua">
Shader:sendColor( name, color, ... )
</source>
=== Arguments ===
{{param|string|name|The name of the color extern variable to send to in the shader.}}
{{param|table|color|A table with red, green, blue, and optional alpha color components in the range of [0, 1] to send to the extern as a vector.}}
{{param|table|...|Additional colors to send in case the extern is an array. All colors need to be of the same size (e.g. only vec3's).}}
=== Returns ===
Nothing.

== See Also ==
* [[parent::Shader]]
* [[Shader:send]]
[[Category:Functions]]
{{#set:Description=Sends one or more colors to the shader.}}
== Other Languages ==
{{i18n|Shader:sendColor}}