Lua GLSL Api: Difference between revisions
From Spring
Jump to navigationJump to search
mNo edit summary |
No edit summary |
||
| Line 13: | Line 13: | ||
'''DeleteShader''' | '''DeleteShader''' | ||
(number shaderID) -> nil | ( number shaderID ) -> nil | ||
'''UseShader''' | '''UseShader''' | ||
(number shaderID) -> boolean linked | ( number shaderID ) -> boolean linked | ||
'''GetShaderLog''' | '''GetShaderLog''' | ||
| Line 23: | Line 23: | ||
'''GetActiveUniforms''' | '''GetActiveUniforms''' | ||
(number shaderID) -> { | ( number shaderID ) -> { | ||
[1] = { name = "name", type = "type", length = number length, size = number size }, | [1] = { name = "name", type = "type", length = number length, size = number size }, | ||
... | ... | ||
| Line 29: | Line 29: | ||
'''GetUniformLocation''' | '''GetUniformLocation''' | ||
(number shaderID, name uniformName) -> number locationID | ( number shaderID, name uniformName ) -> number locationID | ||
'''Uniform''' | '''Uniform''' | ||
(number locationID, number float1 [,number float2 [,number float3 [,number float4]]] ) -> nil | ( number locationID, number float1 [,number float2 [,number float3 [,number float4]]] ) -> nil | ||
'''UniformInt''' | '''UniformInt''' | ||
(number locationID, number int1 [,number int2 [,number int3 [,number int4]]] ) -> nil | ( number locationID, number int1 [,number int2 [,number int3 [,number int4]]] ) -> nil | ||
'''UniformMatrix''' | '''UniformMatrix''' | ||
(number locationID, | ( number locationID, | ||
"shadow" | | |||
"camera" | | |||
"caminv" | | |||
"camprj" | | |||
number m1, number m2, number m3, number m4 | | |||
number m1, ... , number m9 | | |||
number m1, ... , number m16 | |||
) -> nil | ) -> nil | ||
Revision as of 15:09, 11 August 2007
All this functions are ONLY available if the graphic board supports GLSL.
So test in your scripts if one of them exists before your use them!
CreateShader
( [ vertex = "glsl code" ],
[ fragment = "glsl code" ],
[ uniform = { uniformName = number value, ...} ],
[ uniformInt = { uniformName = number value, ...} ],
[ uniformMatrix = { uniformName = number value, ...} ]
) -> number shaderID
DeleteShader
( number shaderID ) -> nil
UseShader
( number shaderID ) -> boolean linked
GetShaderLog
() -> string "errorLog"
GetActiveUniforms
( number shaderID ) -> {
[1] = { name = "name", type = "type", length = number length, size = number size },
...
}
GetUniformLocation
( number shaderID, name uniformName ) -> number locationID
Uniform
( number locationID, number float1 [,number float2 [,number float3 [,number float4]]] ) -> nil
UniformInt
( number locationID, number int1 [,number int2 [,number int3 [,number int4]]] ) -> nil
UniformMatrix
( number locationID, "shadow" | "camera" | "caminv" | "camprj" | number m1, number m2, number m3, number m4 | number m1, ... , number m9 | number m1, ... , number m16 ) -> nil