summaryrefslogtreecommitdiff
path: root/src/core.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/core.c')
-rw-r--r--src/core.c35
1 files changed, 34 insertions, 1 deletions
diff --git a/src/core.c b/src/core.c
index c5736da..093c07b 100644
--- a/src/core.c
+++ b/src/core.c
@@ -932,7 +932,7 @@ int lcoreLoadShaderFromMemory( lua_State* L ) {
}
/*
-> isReady = RL.IsShaderValid( Shader shader )
+> isValid = RL.IsShaderValid( Shader shader )
Check if a shader is valid (loaded on GPU)
@@ -1138,6 +1138,39 @@ int lcoreSetShaderValueV( lua_State* L ) {
}
/*
+> RL.SetShaderValueWithBuffer( Shader shader, int locIndex, Buffer values, int uniformType )
+
+Set shader uniform value using Buffer object
+*/
+int lcoreSetShaderValueWithBuffer( lua_State* L ) {
+ Shader* shader = uluaGetShader( L, 1 );
+ int locIndex = luaL_checkinteger( L, 2 );
+ Buffer* value = uluaGetBuffer( L, 3 );
+ int uniformType = luaL_checkinteger( L, 4 );
+
+ SetShaderValue( *shader, locIndex, value->data, uniformType );
+
+ return 0;
+}
+
+/*
+> RL.SetShaderValueVWithBuffer( Shader shader, int locIndex, Buffer values, int uniformType, int count )
+
+Set shader uniform value vector using Buffer object
+*/
+int lcoreSetShaderValueVWithBuffer( lua_State* L ) {
+ Shader* shader = uluaGetShader( L, 1 );
+ int locIndex = luaL_checkinteger( L, 2 );
+ Buffer* value = uluaGetBuffer( L, 3 );
+ int uniformType = luaL_checkinteger( L, 4 );
+ int count = luaL_checkinteger( L, 5 );
+
+ SetShaderValueV( *shader, locIndex, value->data, uniformType, count );
+
+ return 0;
+}
+
+/*
> RL.UnloadShader( Shader shader )
Unload shader from GPU memory (VRAM)