Lua GLSL Api: Difference between revisions

From Spring
Jump to navigationJump to search
JK (talk | contribs)
No edit summary
JK (talk | contribs)
mNo edit summary
Line 32: Line 32:


'''Uniform'''
'''Uniform'''
   ( number locationID, number float1 [,number float2 [,number float3 [,number float4]]] ) -> nil
   ( number locationID, number f1 [,number f2 [,number f3 [,number f4]]] ) -> nil


'''UniformInt'''
'''UniformInt'''

Revision as of 15:10, 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 f1 [,number f2 [,number f3 [,number f4]]] ) -> 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