RLGL Hello triangle example.
This commit is contained in:
15
src/core.c
15
src/core.c
@@ -884,6 +884,21 @@ int lcoreIsShaderReady( lua_State *L ) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
> shaderId = RL.GetShaderId( Shader shader )
|
||||
|
||||
Get shader program id
|
||||
|
||||
- Success return int
|
||||
*/
|
||||
int lcoreGetShaderId( lua_State *L ) {
|
||||
Shader *shader = uluaGetShader( L, 1 );
|
||||
|
||||
lua_pushinteger( L, shader->id );
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
> location = RL.GetShaderLocation( Shader shader, string uniformName )
|
||||
|
||||
|
||||
@@ -1225,6 +1225,7 @@ void luaRegister() {
|
||||
assingGlobalFunction( "LoadShader", lcoreLoadShader );
|
||||
assingGlobalFunction( "LoadShaderFromMemory", lcoreLoadShaderFromMemory );
|
||||
assingGlobalFunction( "IsShaderReady", lcoreIsShaderReady );
|
||||
assingGlobalFunction( "GetShaderId", lcoreGetShaderId );
|
||||
assingGlobalFunction( "GetShaderLocation", lcoreGetShaderLocation );
|
||||
assingGlobalFunction( "GetShaderLocationAttrib", lcoreGetShaderLocationAttrib );
|
||||
assingGlobalFunction( "SetShaderLocationIndex", lcoreSetShaderLocationIndex );
|
||||
@@ -1497,6 +1498,7 @@ void luaRegister() {
|
||||
assingGlobalFunction( "GetImageAlphaBorder", ltexturesGetImageAlphaBorder );
|
||||
assingGlobalFunction( "GetImageColor", ltexturesGetImageColor );
|
||||
/* Image configuration functions. */
|
||||
assingGlobalFunction( "GetImageData", ltexturesGetImageData );
|
||||
assingGlobalFunction( "GetImageSize", ltexturesGetImageSize );
|
||||
assingGlobalFunction( "GetImageMipmaps", ltexturesGetImageMipmaps );
|
||||
assingGlobalFunction( "GetImageFormat", ltexturesGetImageFormat );
|
||||
|
||||
@@ -1105,7 +1105,7 @@ int lrlglUnloadVertexBuffer( lua_State *L ) {
|
||||
/*
|
||||
> RL.rlSetVertexAttribute( int index, int compSize, int type, bool normalized, int stride, int pointer )
|
||||
|
||||
Set vertex attribute
|
||||
Set vertex attribute. Note! Pointer should be given in size of bytes
|
||||
*/
|
||||
int lrlglSetVertexAttribute( lua_State *L ) {
|
||||
int index = luaL_checkinteger( L, 1 );
|
||||
@@ -1115,7 +1115,7 @@ int lrlglSetVertexAttribute( lua_State *L ) {
|
||||
int stride = luaL_checkinteger( L, 5 );
|
||||
int pointer = luaL_checkinteger( L, 6 );
|
||||
|
||||
rlSetVertexAttribute( index, compSize, type, normalized, stride, &pointer );
|
||||
rlSetVertexAttribute( index, compSize, type, normalized, stride, (void*)( pointer * sizeof( char ) ) );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -839,6 +839,28 @@ int ltexturesGetImageColor( lua_State *L ) {
|
||||
## Textures - Image configuration functions
|
||||
*/
|
||||
|
||||
/*
|
||||
> imageData = RL.GetImageData( Image image )
|
||||
|
||||
Get image data as Buffer
|
||||
|
||||
- Success return Buffer
|
||||
*/
|
||||
int ltexturesGetImageData( lua_State *L ) {
|
||||
Image *image = uluaGetImage( L, 1 );
|
||||
|
||||
Buffer buffer = (Buffer){
|
||||
.type = BUFFER_UNSIGNED_CHAR,
|
||||
.size = GetPixelDataSize( image->width, image->height, image->format ),
|
||||
};
|
||||
buffer.data = malloc( buffer.size * sizeof( unsigned char ) );
|
||||
memcpy( buffer.data, image->data, buffer.size );
|
||||
|
||||
uluaPushBuffer( L, buffer );
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
> size = RL.GetImageSize( Image image )
|
||||
|
||||
|
||||
Reference in New Issue
Block a user