Added various missing functions.
This commit is contained in:
94
API.md
94
API.md
@@ -4494,6 +4494,14 @@ Detect if a key has been pressed once
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
> pressed = RL.IsKeyPressedRepeat( int key )
|
||||||
|
|
||||||
|
Check if a key has been pressed again (Only PLATFORM_DESKTOP)
|
||||||
|
|
||||||
|
- Success return bool
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
> pressed = RL.IsKeyDown( int key )
|
> pressed = RL.IsKeyDown( int key )
|
||||||
|
|
||||||
Detect if a key is being pressed
|
Detect if a key is being pressed
|
||||||
@@ -4584,6 +4592,22 @@ Detect if a gamepad button has been released once
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
> notPressed = RL.IsGamepadButtonUp( int gamepad, int button )
|
||||||
|
|
||||||
|
Check if a gamepad button is NOT being pressed
|
||||||
|
|
||||||
|
- Success return bool
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
> button = RL.GetGamepadButtonPressed()
|
||||||
|
|
||||||
|
Get the last gamepad button pressed
|
||||||
|
|
||||||
|
- Success return int
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
> count = RL.GetGamepadAxisCount( int gamepad )
|
> count = RL.GetGamepadAxisCount( int gamepad )
|
||||||
|
|
||||||
Return gamepad axis count for a gamepad
|
Return gamepad axis count for a gamepad
|
||||||
@@ -4680,12 +4704,20 @@ Set mouse scaling
|
|||||||
|
|
||||||
> movement = RL.GetMouseWheelMove()
|
> movement = RL.GetMouseWheelMove()
|
||||||
|
|
||||||
Returns mouse wheel movement Y
|
Get mouse wheel movement for X or Y, whichever is larger
|
||||||
|
|
||||||
- Success return float
|
- Success return float
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
> movement = RL.GetMouseWheelMoveV()
|
||||||
|
|
||||||
|
Get mouse wheel movement for both X and Y
|
||||||
|
|
||||||
|
- Success return Vector2
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
> RL.SetMouseCursor( int cursor )
|
> RL.SetMouseCursor( int cursor )
|
||||||
|
|
||||||
Set mouse cursor
|
Set mouse cursor
|
||||||
@@ -5705,7 +5737,15 @@ Create an image from another image piece
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
> image = RL.ImageText( Font font, string text, float fontSize, float spacing, Color tint )
|
> image = RL.ImageText( string text, int fontSize, Color tint )
|
||||||
|
|
||||||
|
Create an image from text (default font)
|
||||||
|
|
||||||
|
- Success return Image
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
> image = RL.ImageTextEx( Font font, string text, float fontSize, float spacing, Color tint )
|
||||||
|
|
||||||
Create an image from text (custom sprite font)
|
Create an image from text (custom sprite font)
|
||||||
|
|
||||||
@@ -5977,6 +6017,12 @@ Draw a source image within a destination image (Tint applied to source)
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
> RL.ImageDrawText( Image dst, string text, Vector2 position, float fontSize, Color tint )
|
||||||
|
|
||||||
|
Draw text (using default font) within an image (destination)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
> RL.ImageDrawTextEx( Image dst, Font font, string text, Vector2 position, float fontSize, float spacing, Color tint )
|
> RL.ImageDrawTextEx( Image dst, Font font, string text, Vector2 position, float fontSize, float spacing, Color tint )
|
||||||
|
|
||||||
Draw text (Custom sprite font) within an image (Destination)
|
Draw text (Custom sprite font) within an image (Destination)
|
||||||
@@ -6150,6 +6196,12 @@ Draw a Texture2D
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
> RL.DrawTextureEx( Texture texture, Vector2 position, float rotation, float scale, Color tint )
|
||||||
|
|
||||||
|
Draw a Texture2D with extended parameters
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
> RL.DrawTextureRec( Texture texture, Rectangle source, Vector2 position, Color tint )
|
> RL.DrawTextureRec( Texture texture, Rectangle source, Vector2 position, Color tint )
|
||||||
|
|
||||||
Draw a part of a texture defined by a rectangle
|
Draw a part of a texture defined by a rectangle
|
||||||
@@ -6476,7 +6528,15 @@ Set vertical line spacing when drawing with line-breaks
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
> size = RL.MeasureText( Font font, string text, float fontSize, float spacing )
|
> width = RL.MeasureText( string text, int fontSize )
|
||||||
|
|
||||||
|
Measure string width for default font
|
||||||
|
|
||||||
|
- Success return int
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
> size = RL.MeasureTextEx( Font font, string text, float fontSize, float spacing )
|
||||||
|
|
||||||
Measure string size for Font
|
Measure string size for Font
|
||||||
|
|
||||||
@@ -6748,6 +6808,12 @@ Draw a color-filled triangle (Vertex in counter-clockwise order!)
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
> RL.DrawTriangleStrip3D( Vector3{} points, Color color )
|
||||||
|
|
||||||
|
Draw a triangle strip defined by points
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
> RL.DrawCube( Vector3 position, Vector3 size, Color color )
|
> RL.DrawCube( Vector3 position, Vector3 size, Color color )
|
||||||
|
|
||||||
Draw cube
|
Draw cube
|
||||||
@@ -7146,6 +7212,14 @@ Generate sphere mesh (Standard sphere)
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
> mesh = RL.GenMeshHemiSphere( float radius, int rings, int slices )
|
||||||
|
|
||||||
|
Generate half-sphere mesh (no bottom cap)
|
||||||
|
|
||||||
|
- Success return Mesh
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
> mesh = RL.GenMeshCylinder( float radius, float height, int slices )
|
> mesh = RL.GenMeshCylinder( float radius, float height, int slices )
|
||||||
|
|
||||||
Generate cylinder mesh
|
Generate cylinder mesh
|
||||||
@@ -7595,6 +7669,12 @@ Checks if a sound is ready
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
> RL.UpdateSound( Sound sound, Buffer data, int sampleCount )
|
||||||
|
|
||||||
|
Update sound buffer with new data
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
> RL.UnloadWave( Wave wave )
|
> RL.UnloadWave( Wave wave )
|
||||||
|
|
||||||
Unload wave data
|
Unload wave data
|
||||||
@@ -7689,6 +7769,14 @@ Convert wave data to desired format
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
> samples = RL.LoadWaveSamples( Wave wave )
|
||||||
|
|
||||||
|
Load samples data from wave as a 32bit float data array
|
||||||
|
|
||||||
|
- Success return float{}
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
> wave = RL.WaveCopy( Wave wave )
|
> wave = RL.WaveCopy( Wave wave )
|
||||||
|
|
||||||
Copy a wave to a new wave
|
Copy a wave to a new wave
|
||||||
|
|||||||
15
README.md
15
README.md
@@ -41,27 +41,34 @@ Example of basic "main.lua" file that will show basic windows with text.
|
|||||||
```Lua
|
```Lua
|
||||||
local textColor = RL.BLACK
|
local textColor = RL.BLACK
|
||||||
local textPos = { 192, 200 }
|
local textPos = { 192, 200 }
|
||||||
|
local textSize = 20
|
||||||
|
local text = "Congrats! You created your first window!"
|
||||||
|
|
||||||
function RL.init()
|
function RL.init()
|
||||||
RL.SetWindowTitle( "First window" )
|
RL.SetWindowTitle( "First window" )
|
||||||
|
RL.SetWindowState( RL.FLAG_VSYNC_HINT )
|
||||||
end
|
end
|
||||||
|
|
||||||
function RL.update( delta )
|
function RL.update( delta )
|
||||||
if RL.IsKeyPressed( RL.KEY_ENTER ) then
|
if RL.IsKeyPressed( RL.KEY_ENTER ) then
|
||||||
textColor = BLUE
|
local winSize = RL.GetScreenSize()
|
||||||
textPos = { 230, 230 }
|
|
||||||
|
textSize = RL.MeasureText( text, textSize )
|
||||||
|
textColor = RL.BLUE
|
||||||
|
textPos = { winSize[1] / 2 - textSize[1] / 2, winSize[2] / 2 - textSize[2] / 2 }
|
||||||
end
|
end
|
||||||
|
|
||||||
if RL.IsKeyPressed( RL.KEY_SPACE ) then
|
if RL.IsKeyPressed( RL.KEY_SPACE ) then
|
||||||
textColor = RL.BLACK
|
textColor = RL.RED
|
||||||
textPos = { 192, 200 }
|
textPos = { 192, 200 }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function RL.draw()
|
function RL.draw()
|
||||||
RL.ClearBackground( RL.RAYWHITE )
|
RL.ClearBackground( RL.RAYWHITE )
|
||||||
RL.DrawText( RL.GetFontDefault(), "Congrats! You created your first window!", textPos, 20, 2, textColor )
|
RL.DrawText( text, textPos, textSize, textColor )
|
||||||
end
|
end
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Application folder structure should be...
|
Application folder structure should be...
|
||||||
|
|||||||
@@ -1963,6 +1963,12 @@ function RL.DecodeDataBase64( data ) end
|
|||||||
---@return any pressed
|
---@return any pressed
|
||||||
function RL.IsKeyPressed( key ) end
|
function RL.IsKeyPressed( key ) end
|
||||||
|
|
||||||
|
---Check if a key has been pressed again (Only PLATFORM_DESKTOP)
|
||||||
|
---- Success return bool
|
||||||
|
---@param key integer
|
||||||
|
---@return any pressed
|
||||||
|
function RL.IsKeyPressedRepeat( key ) end
|
||||||
|
|
||||||
---Detect if a key is being pressed
|
---Detect if a key is being pressed
|
||||||
---- Success return bool
|
---- Success return bool
|
||||||
---@param key integer
|
---@param key integer
|
||||||
@@ -2031,6 +2037,18 @@ function RL.IsGamepadButtonDown( gamepad, button ) end
|
|||||||
---@return any released
|
---@return any released
|
||||||
function RL.IsGamepadButtonReleased( gamepad, button ) end
|
function RL.IsGamepadButtonReleased( gamepad, button ) end
|
||||||
|
|
||||||
|
---Check if a gamepad button is NOT being pressed
|
||||||
|
---- Success return bool
|
||||||
|
---@param gamepad integer
|
||||||
|
---@param button integer
|
||||||
|
---@return any notPressed
|
||||||
|
function RL.IsGamepadButtonUp( gamepad, button ) end
|
||||||
|
|
||||||
|
---Get the last gamepad button pressed
|
||||||
|
---- Success return int
|
||||||
|
---@return any button
|
||||||
|
function RL.GetGamepadButtonPressed() end
|
||||||
|
|
||||||
---Return gamepad axis count for a gamepad
|
---Return gamepad axis count for a gamepad
|
||||||
---- Success return int
|
---- Success return int
|
||||||
---@param gamepad integer
|
---@param gamepad integer
|
||||||
@@ -2101,11 +2119,16 @@ function RL.SetMouseOffset( offset ) end
|
|||||||
---@return any RL.SetMouseScale
|
---@return any RL.SetMouseScale
|
||||||
function RL.SetMouseScale( scale ) end
|
function RL.SetMouseScale( scale ) end
|
||||||
|
|
||||||
---Returns mouse wheel movement Y
|
---Get mouse wheel movement for X or Y, whichever is larger
|
||||||
---- Success return float
|
---- Success return float
|
||||||
---@return any movement
|
---@return any movement
|
||||||
function RL.GetMouseWheelMove() end
|
function RL.GetMouseWheelMove() end
|
||||||
|
|
||||||
|
---Get mouse wheel movement for both X and Y
|
||||||
|
---- Success return Vector2
|
||||||
|
---@return any movement
|
||||||
|
function RL.GetMouseWheelMoveV() end
|
||||||
|
|
||||||
---Set mouse cursor
|
---Set mouse cursor
|
||||||
---@param cursor integer
|
---@param cursor integer
|
||||||
---@return any RL.SetMouseCursor
|
---@return any RL.SetMouseCursor
|
||||||
@@ -3106,6 +3129,14 @@ function RL.ImageCopy( image ) end
|
|||||||
---@return any image
|
---@return any image
|
||||||
function RL.ImageFromImage( image, rec ) end
|
function RL.ImageFromImage( image, rec ) end
|
||||||
|
|
||||||
|
---Create an image from text (default font)
|
||||||
|
---- Success return Image
|
||||||
|
---@param text string
|
||||||
|
---@param fontSize integer
|
||||||
|
---@param tint table
|
||||||
|
---@return any image
|
||||||
|
function RL.ImageText( text, fontSize, tint ) end
|
||||||
|
|
||||||
---Create an image from text (custom sprite font)
|
---Create an image from text (custom sprite font)
|
||||||
---- Success return Image
|
---- Success return Image
|
||||||
---@param font any
|
---@param font any
|
||||||
@@ -3114,7 +3145,7 @@ function RL.ImageFromImage( image, rec ) end
|
|||||||
---@param spacing number
|
---@param spacing number
|
||||||
---@param tint table
|
---@param tint table
|
||||||
---@return any image
|
---@return any image
|
||||||
function RL.ImageText( font, text, fontSize, spacing, tint ) end
|
function RL.ImageTextEx( font, text, fontSize, spacing, tint ) end
|
||||||
|
|
||||||
---Convert image data to desired format
|
---Convert image data to desired format
|
||||||
---@param image any
|
---@param image any
|
||||||
@@ -3372,6 +3403,15 @@ function RL.ImageDrawRectangleLines( dst, rec, thick, color ) end
|
|||||||
---@return any RL.ImageDraw
|
---@return any RL.ImageDraw
|
||||||
function RL.ImageDraw( dst, src, srcRec, dstRec, tint ) end
|
function RL.ImageDraw( dst, src, srcRec, dstRec, tint ) end
|
||||||
|
|
||||||
|
---Draw text (using default font) within an image (destination)
|
||||||
|
---@param dst any
|
||||||
|
---@param text string
|
||||||
|
---@param position table
|
||||||
|
---@param fontSize number
|
||||||
|
---@param tint table
|
||||||
|
---@return any RL.ImageDrawText
|
||||||
|
function RL.ImageDrawText( dst, text, position, fontSize, tint ) end
|
||||||
|
|
||||||
---Draw text (Custom sprite font) within an image (Destination)
|
---Draw text (Custom sprite font) within an image (Destination)
|
||||||
---@param dst any
|
---@param dst any
|
||||||
---@param font any
|
---@param font any
|
||||||
@@ -3517,6 +3557,15 @@ function RL.GetTextureFormat( texture ) end
|
|||||||
---@return any RL.DrawTexture
|
---@return any RL.DrawTexture
|
||||||
function RL.DrawTexture( texture, position, tint ) end
|
function RL.DrawTexture( texture, position, tint ) end
|
||||||
|
|
||||||
|
---Draw a Texture2D with extended parameters
|
||||||
|
---@param texture any
|
||||||
|
---@param position table
|
||||||
|
---@param rotation number
|
||||||
|
---@param scale number
|
||||||
|
---@param tint table
|
||||||
|
---@return any RL.DrawTextureEx
|
||||||
|
function RL.DrawTextureEx( texture, position, rotation, scale, tint ) end
|
||||||
|
|
||||||
---Draw a part of a texture defined by a rectangle
|
---Draw a part of a texture defined by a rectangle
|
||||||
---@param texture any
|
---@param texture any
|
||||||
---@param source table
|
---@param source table
|
||||||
@@ -3844,6 +3893,13 @@ function RL.DrawTextBoxedTinted( font, text, rec, fontSize, spacing, wordWrap, t
|
|||||||
---@return any size
|
---@return any size
|
||||||
function RL.SetTextLineSpacing( spacing ) end
|
function RL.SetTextLineSpacing( spacing ) end
|
||||||
|
|
||||||
|
---Measure string width for default font
|
||||||
|
---- Success return int
|
||||||
|
---@param text string
|
||||||
|
---@param fontSize integer
|
||||||
|
---@return any width
|
||||||
|
function RL.MeasureText( text, fontSize ) end
|
||||||
|
|
||||||
---Measure string size for Font
|
---Measure string size for Font
|
||||||
---- Success return Vector2
|
---- Success return Vector2
|
||||||
---@param font any
|
---@param font any
|
||||||
@@ -3851,7 +3907,7 @@ function RL.SetTextLineSpacing( spacing ) end
|
|||||||
---@param fontSize number
|
---@param fontSize number
|
||||||
---@param spacing number
|
---@param spacing number
|
||||||
---@return any size
|
---@return any size
|
||||||
function RL.MeasureText( font, text, fontSize, spacing ) end
|
function RL.MeasureTextEx( font, text, fontSize, spacing ) end
|
||||||
|
|
||||||
---Get glyph index position in font for a codepoint (unicode character), fallback to '?' if not found
|
---Get glyph index position in font for a codepoint (unicode character), fallback to '?' if not found
|
||||||
---- Success return int
|
---- Success return int
|
||||||
@@ -4078,6 +4134,12 @@ function RL.DrawCircle3D( center, radius, rotationAxis, rotationAngle, color )
|
|||||||
---@return any RL.DrawTriangle3D
|
---@return any RL.DrawTriangle3D
|
||||||
function RL.DrawTriangle3D( v1, v2, v3, color ) end
|
function RL.DrawTriangle3D( v1, v2, v3, color ) end
|
||||||
|
|
||||||
|
---Draw a triangle strip defined by points
|
||||||
|
---@param points table
|
||||||
|
---@param color table
|
||||||
|
---@return any RL.DrawTriangleStrip3D
|
||||||
|
function RL.DrawTriangleStrip3D( points, color ) end
|
||||||
|
|
||||||
---Draw cube
|
---Draw cube
|
||||||
---@param position table
|
---@param position table
|
||||||
---@param size table
|
---@param size table
|
||||||
@@ -4505,6 +4567,14 @@ function RL.GenMeshCube( size ) end
|
|||||||
---@return any mesh
|
---@return any mesh
|
||||||
function RL.GenMeshSphere( radius, rings, slices ) end
|
function RL.GenMeshSphere( radius, rings, slices ) end
|
||||||
|
|
||||||
|
---Generate half-sphere mesh (no bottom cap)
|
||||||
|
---- Success return Mesh
|
||||||
|
---@param radius number
|
||||||
|
---@param rings integer
|
||||||
|
---@param slices integer
|
||||||
|
---@return any mesh
|
||||||
|
function RL.GenMeshHemiSphere( radius, rings, slices ) end
|
||||||
|
|
||||||
---Generate cylinder mesh
|
---Generate cylinder mesh
|
||||||
---- Success return Mesh
|
---- Success return Mesh
|
||||||
---@param radius number
|
---@param radius number
|
||||||
@@ -4894,6 +4964,13 @@ function RL.LoadSoundAlias( source ) end
|
|||||||
---@return any isReady
|
---@return any isReady
|
||||||
function RL.IsSoundReady( sound ) end
|
function RL.IsSoundReady( sound ) end
|
||||||
|
|
||||||
|
---Update sound buffer with new data
|
||||||
|
---@param sound any
|
||||||
|
---@param data any
|
||||||
|
---@param sampleCount integer
|
||||||
|
---@return any RL.UpdateSound
|
||||||
|
function RL.UpdateSound( sound, data, sampleCount ) end
|
||||||
|
|
||||||
---Unload wave data
|
---Unload wave data
|
||||||
---@param wave any
|
---@param wave any
|
||||||
---@return any RL.UnloadWave
|
---@return any RL.UnloadWave
|
||||||
@@ -4977,6 +5054,12 @@ function RL.SetSoundPan( sound, pan ) end
|
|||||||
---@return any RL.WaveFormat
|
---@return any RL.WaveFormat
|
||||||
function RL.WaveFormat( wave, sampleRate, sampleSize, channels ) end
|
function RL.WaveFormat( wave, sampleRate, sampleSize, channels ) end
|
||||||
|
|
||||||
|
---Load samples data from wave as a 32bit float data array
|
||||||
|
---- Success return float{}
|
||||||
|
---@param wave any
|
||||||
|
---@return any samples
|
||||||
|
function RL.LoadWaveSamples( wave ) end
|
||||||
|
|
||||||
---Copy a wave to a new wave
|
---Copy a wave to a new wave
|
||||||
---- Success return Wave
|
---- Success return Wave
|
||||||
---@param wave any
|
---@param wave any
|
||||||
|
|||||||
177
apiScanner.lua
177
apiScanner.lua
@@ -2,79 +2,69 @@ local raylib = {
|
|||||||
prefix = "RLAPI",
|
prefix = "RLAPI",
|
||||||
file = "raylib.h",
|
file = "raylib.h",
|
||||||
blacklist = {
|
blacklist = {
|
||||||
InitWindow = true, -- Handled internally.
|
InitWindow = "Handled internally",
|
||||||
WindowShouldClose = true, -- Handled internally.
|
WindowShouldClose = "Handled internally",
|
||||||
GetScreenWidth = true, -- Replaced by GetScreenSize.
|
GetScreenWidth = "Replaced by GetScreenSize",
|
||||||
GetScreenHeight = true, -- Replaced by GetScreenSize.
|
GetScreenHeight = "Replaced by GetScreenSize",
|
||||||
GetRenderWidth = true, -- Replaced by GetRenderSize.
|
GetRenderWidth = "Replaced by GetRenderSize",
|
||||||
GetRenderHeight = true, -- Replaced by GetRenderSize.
|
GetRenderHeight = "Replaced by GetRenderSize",
|
||||||
GetMonitorWidth = true, -- Replaced by GetMonitorSize.
|
GetMonitorWidth = "Replaced by GetMonitorSize",
|
||||||
GetMonitorHeight = true, -- Replaced by GetMonitorSize.
|
GetMonitorHeight = "Replaced by GetMonitorSize",
|
||||||
GetMonitorPhysicalWidth = true, -- Replaced by GetMonitorPhysicalSize.
|
GetMonitorPhysicalWidth = "Replaced by GetMonitorPhysicalSize",
|
||||||
GetMonitorPhysicalHeight = true, -- Replaced by GetMonitorPhysicalSize.
|
GetMonitorPhysicalHeight = "Replaced by GetMonitorPhysicalSize",
|
||||||
UnloadRandomSequence = true, -- Handled internally.
|
UnloadRandomSequence = "Handled internally",
|
||||||
MemAlloc = true, -- Buffer should be used instead.
|
MemAlloc = "Buffer should be used instead",
|
||||||
MemRealloc = true, -- Buffer should be used instead.
|
MemRealloc = "Buffer should be used instead",
|
||||||
MemFree = true, -- Buffer should be used instead.
|
MemFree = "Buffer should be used instead",
|
||||||
SetTraceLogCallback = true, -- Handled internally.
|
SetTraceLogCallback = "Handled internally",
|
||||||
SetLoadFileDataCallback = true, -- Not seen necessary.
|
SetLoadFileDataCallback = "Not seen necessary",
|
||||||
SetSaveFileDataCallback = true, -- Not seen necessary.
|
SetSaveFileDataCallback = "Not seen necessary",
|
||||||
SetLoadFileTextCallback = true, -- Not seen necessary.
|
SetLoadFileTextCallback = "Not seen necessary",
|
||||||
SetSaveFileTextCallback = true, -- Not seen necessary.
|
SetSaveFileTextCallback = "Not seen necessary",
|
||||||
UnloadFileData = true, -- Handled internally.
|
UnloadFileData = "Handled internally",
|
||||||
UnloadFileText = true, -- Handled internally.
|
UnloadFileText = "Handled internally",
|
||||||
UnloadDirectoryFiles = true, -- Handled internally.
|
UnloadDirectoryFiles = "Handled internally",
|
||||||
UnloadDroppedFiles = true, -- Handled internally.
|
UnloadDroppedFiles = "Handled internally",
|
||||||
GetMouseX = true, -- Replaced by GetMousePosition.
|
GetMouseX = "Replaced by GetMousePosition",
|
||||||
GetMouseY = true, -- Replaced by GetMousePosition.
|
GetMouseY = "Replaced by GetMousePosition",
|
||||||
GetTouchX = true, -- Replaced by GetTouchPosition.
|
GetTouchX = "Replaced by GetTouchPosition",
|
||||||
GetTouchY = true, -- Replaced by GetTouchPosition.
|
GetTouchY = "Replaced by GetTouchPosition",
|
||||||
UpdateCamera = true, -- Replaced by UpdateCamera3D.
|
UpdateCamera = "Replaced by UpdateCamera3D",
|
||||||
UpdateCameraPro = true, -- Replaced by UpdateCameraPro3D.
|
UpdateCameraPro = "Replaced by UpdateCameraPro3D",
|
||||||
DrawPixelV = true, -- Replaced by DrawPixel.
|
DrawPixelV = "Replaced by DrawPixel",
|
||||||
DrawLineV = true, -- Replaced by DrawLine.
|
DrawLineV = "Replaced by DrawLine",
|
||||||
DrawCircleV = true, -- Replaced by DrawCircle.
|
DrawLineEx = "Replaced by DrawLine",
|
||||||
DrawCircleLinesV = true, -- Replaced by DrawCircleLines.
|
DrawCircleV = "Replaced by DrawCircle",
|
||||||
DrawRectangleV = true, -- Replaced by DrawRectangle.
|
DrawCircleLinesV = "Replaced by DrawCircleLines",
|
||||||
DrawRectangleRec = true, -- Replaced by DrawRectangle.
|
DrawRectangleV = "Replaced by DrawRectangle",
|
||||||
ImageTextEx = true, -- Replaced by ImageText.
|
DrawRectangleRec = "Replaced by DrawRectangle",
|
||||||
UnloadImageColors = true, -- Handled internally.
|
UnloadImageColors = "Handled internally",
|
||||||
UnloadImagePalette = true, -- Handled internally.
|
UnloadImagePalette = "Handled internally",
|
||||||
ImageDrawPixelV = true, -- Replaced by ImageDrawPixel.
|
ImageDrawPixelV = "Replaced by ImageDrawPixel",
|
||||||
ImageDrawLineV = true, -- Replaced by ImageDrawLine.
|
ImageDrawLineV = "Replaced by ImageDrawLine",
|
||||||
ImageDrawCircleV = true, -- Replaced by ImageDrawCircle.
|
ImageDrawCircleV = "Replaced by ImageDrawCircle",
|
||||||
ImageDrawCircleLinesV = true, -- Replaced by ImageDrawCircleLines.
|
ImageDrawCircleLinesV = "Replaced by ImageDrawCircleLines",
|
||||||
ImageDrawRectangleV = true, -- Replaced by ImageDrawRectangle.
|
ImageDrawRectangleV = "Replaced by ImageDrawRectangle",
|
||||||
ImageDrawRectangleRec = true, -- Replaced by ImageDrawRectangle.
|
ImageDrawRectangleRec = "Replaced by ImageDrawRectangle",
|
||||||
DrawTextureV = true, -- Replaced by DrawTexture.
|
DrawTextureV = "Replaced by DrawTexture",
|
||||||
UnloadFontData = true, -- Handled internally.
|
UnloadFontData = "Handled internally",
|
||||||
MeasureTextEx = true, -- Replaced by MeasureText.
|
UnloadUTF8 = "Handled internally",
|
||||||
UnloadUTF8 = true, -- Handled internally.
|
UnloadCodepoints = "Handled internally",
|
||||||
UnloadCodepoints = true, -- Handled internally.
|
TextCopy = "Can be replaced by Lua equivalent",
|
||||||
TextCopy = true, -- Can be replaced by Lua equivalent.
|
TextIsEqual = "Can be replaced by Lua equivalent",
|
||||||
TextIsEqual = true, -- Can be replaced by Lua equivalent.
|
TextLength = "Can be replaced by Lua equivalent",
|
||||||
TextLength = true, -- Can be replaced by Lua equivalent.
|
TextJoin = "Can be replaced by Lua equivalent",
|
||||||
TextSubtext = true, -- Can be replaced by Lua equivalent.
|
TextAppend = "Can be replaced by Lua equivalent",
|
||||||
TextJoin = true, -- Can be replaced by Lua equivalent.
|
TextToUpper = "Can be replaced by Lua equivalent",
|
||||||
TextAppend = true, -- Can be replaced by Lua equivalent.
|
TextToLower = "Can be replaced by Lua equivalent",
|
||||||
TextToUpper = true, -- Can be replaced by Lua equivalent.
|
TextToInteger = "Can be replaced by Lua equivalent",
|
||||||
TextToLower = true, -- Can be replaced by Lua equivalent.
|
DrawCubeV = "Replaced by DrawCube",
|
||||||
TextToInteger = true, -- Can be replaced by Lua equivalent.
|
DrawCubeWiresV = "Replaced by DrawCubeWires",
|
||||||
DrawCubeV = true, -- Replaced by DrawCube.
|
UploadMesh = "Handled internally",
|
||||||
DrawCubeWiresV = true, -- Replaced by DrawCubeWires.
|
UpdateMeshBuffer = "Handled internally",
|
||||||
UploadMesh = true, -- Handled internally.
|
UnloadWaveSamples = "Handled internally",
|
||||||
UpdateMeshBuffer = true, -- Handled internally.
|
|
||||||
UnloadWaveSamples = true, -- Handled internally.
|
|
||||||
},
|
},
|
||||||
info = {
|
info = {
|
||||||
IsKeyPressedRepeat = "Will be added",
|
|
||||||
IsGamepadButtonUp = "Will be added",
|
|
||||||
GetGamepadButtonPressed = "Will be added",
|
|
||||||
GetMouseWheelMoveV = "Will be added",
|
|
||||||
DrawLineEx = "Will be added",
|
|
||||||
ImageDrawText = "Could be added",
|
|
||||||
DrawTextureEx = "Will be added",
|
|
||||||
DrawTriangleStrip3D = "Will be added",
|
|
||||||
GenMeshHemiSphere = "Will be added",
|
GenMeshHemiSphere = "Will be added",
|
||||||
GenMeshCubicmap = "Will be added",
|
GenMeshCubicmap = "Will be added",
|
||||||
UpdateSound = "Will be added",
|
UpdateSound = "Will be added",
|
||||||
@@ -85,12 +75,12 @@ local rlgl = {
|
|||||||
prefix = "RLAPI",
|
prefix = "RLAPI",
|
||||||
file = "rlgl.h",
|
file = "rlgl.h",
|
||||||
blacklist = {
|
blacklist = {
|
||||||
rlVertex2i = true, -- Most likely not needed.
|
rlVertex2i = "Most likely not needed",
|
||||||
rlglInit = true, -- Handled internally.
|
rlglInit = "Handled internally",
|
||||||
rlglClose = true, -- Handled internally.
|
rlglClose = "Handled internally",
|
||||||
rlLoadExtensions = true, -- Handled internally.
|
rlLoadExtensions = "Handled internally",
|
||||||
rlLoadDrawCube = true, -- Most likely not needed.
|
rlLoadDrawCube = "Most likely not needed",
|
||||||
rlLoadDrawQuad = true, -- Most likely not needed.
|
rlLoadDrawQuad = "Most likely not needed",
|
||||||
},
|
},
|
||||||
info = {
|
info = {
|
||||||
rlEnableStatePointer = "Available for GRAPHICS_API_OPENGL_11",
|
rlEnableStatePointer = "Available for GRAPHICS_API_OPENGL_11",
|
||||||
@@ -109,8 +99,8 @@ local raymath = {
|
|||||||
prefix = "RMAPI",
|
prefix = "RMAPI",
|
||||||
file = "raymath.h",
|
file = "raymath.h",
|
||||||
blacklist = {
|
blacklist = {
|
||||||
Vector3ToFloatV = true, -- Can be replaced by Lua equivalent.
|
Vector3ToFloatV = "Can be replaced by Lua equivalent",
|
||||||
MatrixToFloatV = true, -- Can be replaced by Lua equivalent.
|
MatrixToFloatV = "Can be replaced by Lua equivalent",
|
||||||
},
|
},
|
||||||
info = {
|
info = {
|
||||||
Vector3Project = "Will be added",
|
Vector3Project = "Will be added",
|
||||||
@@ -121,10 +111,10 @@ local easings = {
|
|||||||
prefix = "EASEDEF",
|
prefix = "EASEDEF",
|
||||||
file = "easings.h",
|
file = "easings.h",
|
||||||
blacklist = {
|
blacklist = {
|
||||||
EaseLinearNone = true, -- "Replaced by EaseLinear"
|
EaseLinearNone = "Replaced by EaseLinear",
|
||||||
EaseLinearIn = true, -- "Replaced by EaseLinear"
|
EaseLinearIn = "Replaced by EaseLinear",
|
||||||
EaseLinearOut = true, -- "Replaced by EaseLinear"
|
EaseLinearOut = "Replaced by EaseLinear",
|
||||||
EaseLinearInOut = true, -- "Replaced by EaseLinear"
|
EaseLinearInOut = "Replaced by EaseLinear",
|
||||||
},
|
},
|
||||||
info = {
|
info = {
|
||||||
},
|
},
|
||||||
@@ -139,7 +129,27 @@ local headers = {
|
|||||||
easings,
|
easings,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if RL.arg[4] == "--help" then
|
||||||
|
print( "You can get blacklisted functions with argument '--blacklist'. Give additional argument to find specific function." )
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
for _, header in ipairs( headers ) do
|
for _, header in ipairs( headers ) do
|
||||||
|
if RL.arg[4] == "--blacklist" then
|
||||||
|
if RL.arg[5] == nil then
|
||||||
|
print( "\nFunctions blacklisted from '"..header.file.."':\n" )
|
||||||
|
|
||||||
|
for func, info in pairs( header.blacklist ) do
|
||||||
|
print( func.."\t\""..info.."\"" )
|
||||||
|
end
|
||||||
|
else
|
||||||
|
for func, info in pairs( header.blacklist ) do
|
||||||
|
if func:lower() == RL.arg[5]:lower() then
|
||||||
|
print( "\nFunction '"..func.."' blacklisted from '"..header.file.."'\t\""..info.."\"\n" )
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
local file = io.open( filePrefix..header.file, "r" )
|
local file = io.open( filePrefix..header.file, "r" )
|
||||||
|
|
||||||
if file ~= nil then
|
if file ~= nil then
|
||||||
@@ -167,4 +177,5 @@ for _, header in ipairs( headers ) do
|
|||||||
end
|
end
|
||||||
until line == nil
|
until line == nil
|
||||||
end
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
14
changelog
14
changelog
@@ -7,6 +7,8 @@ KEY CHANGES:
|
|||||||
- CHANGE: Process renamed to update to be more inline with naming of raylib and common convention.
|
- CHANGE: Process renamed to update to be more inline with naming of raylib and common convention.
|
||||||
- ADDED: Raygui lib tooltip.
|
- ADDED: Raygui lib tooltip.
|
||||||
- ADDED: apiScanner.lua for searching unimplemented functions from raylib.
|
- ADDED: apiScanner.lua for searching unimplemented functions from raylib.
|
||||||
|
- ADDED & CHANGE: ImageText. ImageTextEx is now equivalent to raylib function and old ImageText.
|
||||||
|
- ADDED & CHANGE: MeasureText. MeasureTextEx is now equivalent to raylib function and old MeasureText.
|
||||||
|
|
||||||
DETAILED CHANGES:
|
DETAILED CHANGES:
|
||||||
- ADDED: GetBufferElementSize and GetBufferLength.
|
- ADDED: GetBufferElementSize and GetBufferLength.
|
||||||
@@ -18,6 +20,16 @@ DETAILED CHANGES:
|
|||||||
- ADDED: rlEnableStatePointer and rlDisableStatePointer for GRAPHICS_API_OPENGL_11.
|
- ADDED: rlEnableStatePointer and rlDisableStatePointer for GRAPHICS_API_OPENGL_11.
|
||||||
- ADDED: rlBlitFramebuffer and rlEnablePointMode.
|
- ADDED: rlBlitFramebuffer and rlEnablePointMode.
|
||||||
- ADDED: Vector3Project and Vector3Reject.
|
- ADDED: Vector3Project and Vector3Reject.
|
||||||
|
- ADDED: IsKeyPressedRepeat, IsGamepadButtonUp, GetGamepadButtonPressed and GetMouseWheelMoveV.
|
||||||
|
- ADDED: ImageDrawText.
|
||||||
|
- ADDED: DrawTextureEx.
|
||||||
|
- ADDED: DrawTriangleStrip3D.
|
||||||
|
- ADDED: GenMeshHemiSphere.
|
||||||
|
- FIXED: GenMeshCubicmap was not assigned.
|
||||||
|
- ADDED: UpdateSound and LoadWaveSamples.
|
||||||
|
- ADDED: TextSubtext, TextReplace and TextToPascal.
|
||||||
|
- ADDED: Custom frame control functions.
|
||||||
|
- REMOVED: GetPixelColor. Deviates too much from raylib function.
|
||||||
|
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
Release: ReiLua version 0.7.0 Using Raylib 5.0 and Forked Raygui 4.0
|
Release: ReiLua version 0.7.0 Using Raylib 5.0 and Forked Raygui 4.0
|
||||||
@@ -112,7 +124,7 @@ KEY CHANGES:
|
|||||||
- ADDED: Global variable descriptions for API.
|
- ADDED: Global variable descriptions for API.
|
||||||
- CHANGED: Organized functions by putting them in the same order as in Raylib.
|
- CHANGED: Organized functions by putting them in the same order as in Raylib.
|
||||||
- ADDED: Matrix library.
|
- ADDED: Matrix library.
|
||||||
- Removed: GC_UNLOAD build time define and replaced with flag to change it at runtime.
|
- REMOVED: GC_UNLOAD build time define and replaced with flag to change it at runtime.
|
||||||
- ADDED: Quaternion library.
|
- ADDED: Quaternion library.
|
||||||
- ADDED: Shader buffer storage object management (ssbo).
|
- ADDED: Shader buffer storage object management (ssbo).
|
||||||
- ADDED: Rest of rlgl texture management functions.
|
- ADDED: Rest of rlgl texture management functions.
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ function RL.init()
|
|||||||
|
|
||||||
RL.ImageDraw( image, catCopy, src, { 600, 200, src[3], src[4] }, RL.WHITE )
|
RL.ImageDraw( image, catCopy, src, { 600, 200, src[3], src[4] }, RL.WHITE )
|
||||||
|
|
||||||
textImage = RL.ImageText( RL.GetFontDefault(), "Cat", 10, 4, RL.WHITE )
|
textImage = RL.ImageTextEx( RL.GetFontDefault(), "Cat", 10, 4, RL.WHITE )
|
||||||
local imageSize = RL.GetImageSize( textImage )
|
local imageSize = RL.GetImageSize( textImage )
|
||||||
RL.ImageDraw( image, textImage, { 0, 0, imageSize[1], imageSize[2] }, { 250, 40, imageSize[1], imageSize[2] }, RL.WHITE )
|
RL.ImageDraw( image, textImage, { 0, 0, imageSize[1], imageSize[2] }, { 250, 40, imageSize[1], imageSize[2] }, RL.WHITE )
|
||||||
|
|
||||||
|
|||||||
@@ -127,6 +127,6 @@ function RL.draw()
|
|||||||
|
|
||||||
-- Draw score.
|
-- Draw score.
|
||||||
RL.DrawText( tostring( playerLeft.score ), { 50, 10 }, 40, RL.WHITE )
|
RL.DrawText( tostring( playerLeft.score ), { 50, 10 }, 40, RL.WHITE )
|
||||||
local rightTextSize = Vec2:new( RL.MeasureText( RL.GetFontDefault(), tostring( playerRight.score ), 40, 2 ) )
|
local rightTextSize = Vec2:new( RL.MeasureTextEx( RL.GetFontDefault(), tostring( playerRight.score ), 40, 2 ) )
|
||||||
RL.DrawText( tostring( playerRight.score ), { winSize.x - 50 - rightTextSize.x, 10 }, 40, RL.WHITE )
|
RL.DrawText( tostring( playerRight.score ), { winSize.x - 50 - rightTextSize.x, 10 }, 40, RL.WHITE )
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -243,7 +243,7 @@ function Text:set( text )
|
|||||||
self.text = text
|
self.text = text
|
||||||
end
|
end
|
||||||
|
|
||||||
local textSize = Vec2:new( RL.MeasureText( self.font, self.text, self.fontSize, self.spacing ) )
|
local textSize = Vec2:new( RL.MeasureTextEx( self.font, self.text, self.fontSize, self.spacing ) )
|
||||||
|
|
||||||
self.bounds.width = textSize.x
|
self.bounds.width = textSize.x
|
||||||
self.bounds.height = textSize.y
|
self.bounds.height = textSize.y
|
||||||
|
|||||||
@@ -1852,7 +1852,7 @@ function Raygui:_addLastProperty( property )
|
|||||||
end
|
end
|
||||||
|
|
||||||
function Raygui:drawTooltip()
|
function Raygui:drawTooltip()
|
||||||
local textSize = Vec2:new( RL.MeasureText(
|
local textSize = Vec2:new( RL.MeasureTextEx(
|
||||||
self.defaultFont,
|
self.defaultFont,
|
||||||
self.tooltip.text,
|
self.tooltip.text,
|
||||||
RL.GuiGetStyle( RL.DEFAULT, RL.TEXT_SIZE ),
|
RL.GuiGetStyle( RL.DEFAULT, RL.TEXT_SIZE ),
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
local textColor = RL.BLACK
|
local textColor = RL.BLACK
|
||||||
local textPos = { 192, 200 }
|
local textPos = { 192, 200 }
|
||||||
|
local textSize = 20
|
||||||
local text = "Congrats! You created your first window!"
|
local text = "Congrats! You created your first window!"
|
||||||
|
|
||||||
function RL.init()
|
function RL.init()
|
||||||
@@ -9,9 +10,9 @@ end
|
|||||||
|
|
||||||
function RL.update( delta )
|
function RL.update( delta )
|
||||||
if RL.IsKeyPressed( RL.KEY_ENTER ) then
|
if RL.IsKeyPressed( RL.KEY_ENTER ) then
|
||||||
local textSize = RL.MeasureText( RL.GetFontDefault(), text, 20, 2 )
|
|
||||||
local winSize = RL.GetScreenSize()
|
local winSize = RL.GetScreenSize()
|
||||||
|
|
||||||
|
textSize = RL.MeasureText( text, textSize )
|
||||||
textColor = RL.BLUE
|
textColor = RL.BLUE
|
||||||
textPos = { winSize[1] / 2 - textSize[1] / 2, winSize[2] / 2 - textSize[2] / 2 }
|
textPos = { winSize[1] / 2 - textSize[1] / 2, winSize[2] / 2 - textSize[2] / 2 }
|
||||||
end
|
end
|
||||||
@@ -24,5 +25,5 @@ end
|
|||||||
|
|
||||||
function RL.draw()
|
function RL.draw()
|
||||||
RL.ClearBackground( RL.RAYWHITE )
|
RL.ClearBackground( RL.RAYWHITE )
|
||||||
RL.DrawText( text, textPos, 20, textColor )
|
RL.DrawText( text, textPos, textSize, textColor )
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ int laudioIsWaveReady( lua_State* L );
|
|||||||
int laudioLoadSoundFromWave( lua_State* L );
|
int laudioLoadSoundFromWave( lua_State* L );
|
||||||
int laudioLoadSoundAlias( lua_State* L );
|
int laudioLoadSoundAlias( lua_State* L );
|
||||||
int laudioIsSoundReady( lua_State* L );
|
int laudioIsSoundReady( lua_State* L );
|
||||||
|
int laudioUpdateSound( lua_State* L );
|
||||||
int laudioUnloadWave( lua_State* L );
|
int laudioUnloadWave( lua_State* L );
|
||||||
int laudioUnloadSound( lua_State* L );
|
int laudioUnloadSound( lua_State* L );
|
||||||
int laudioUnloadSoundAlias( lua_State* L );
|
int laudioUnloadSoundAlias( lua_State* L );
|
||||||
@@ -29,6 +30,7 @@ int laudioSetSoundVolume( lua_State* L );
|
|||||||
int laudioSetSoundPitch( lua_State* L );
|
int laudioSetSoundPitch( lua_State* L );
|
||||||
int laudioSetSoundPan( lua_State* L );
|
int laudioSetSoundPan( lua_State* L );
|
||||||
int laudioWaveFormat( lua_State* L );
|
int laudioWaveFormat( lua_State* L );
|
||||||
|
int laudioLoadWaveSamples( lua_State* L );
|
||||||
int laudioWaveCopy( lua_State* L );
|
int laudioWaveCopy( lua_State* L );
|
||||||
int laudioWaveCrop( lua_State* L );
|
int laudioWaveCrop( lua_State* L );
|
||||||
/* Music management functions. */
|
/* Music management functions. */
|
||||||
|
|||||||
@@ -91,9 +91,13 @@ int lcoreGetWorldToScreen2D( lua_State* L );
|
|||||||
int lcoreGetScreenToWorld2D( lua_State* L );
|
int lcoreGetScreenToWorld2D( lua_State* L );
|
||||||
/* Timing-related functions. */
|
/* Timing-related functions. */
|
||||||
int lcoreSetTargetFPS( lua_State* L );
|
int lcoreSetTargetFPS( lua_State* L );
|
||||||
int lcoreGetFPS( lua_State* L );
|
|
||||||
int lcoreGetFrameTime( lua_State* L );
|
int lcoreGetFrameTime( lua_State* L );
|
||||||
int lcoreGetTime( lua_State* L );
|
int lcoreGetTime( lua_State* L );
|
||||||
|
int lcoreGetFPS( lua_State* L );
|
||||||
|
/* Custom frame control functions. */
|
||||||
|
int lcoreSwapScreenBuffer( lua_State* L );
|
||||||
|
int lcorePollInputEvents( lua_State* L );
|
||||||
|
int lcoreWaitTime( lua_State* L );
|
||||||
/* Random values generation functions. */
|
/* Random values generation functions. */
|
||||||
int lcoreSetRandomSeed( lua_State* L );
|
int lcoreSetRandomSeed( lua_State* L );
|
||||||
int lcoreGetRandomValue( lua_State* L );
|
int lcoreGetRandomValue( lua_State* L );
|
||||||
@@ -141,6 +145,7 @@ int lcoreEncodeDataBase64( lua_State* L );
|
|||||||
int lcoreDecodeDataBase64( lua_State* L );
|
int lcoreDecodeDataBase64( lua_State* L );
|
||||||
/* Input-related functions: keyboard. */
|
/* Input-related functions: keyboard. */
|
||||||
int lcoreIsKeyPressed( lua_State* L );
|
int lcoreIsKeyPressed( lua_State* L );
|
||||||
|
int lcoreIsKeyPressedRepeat( lua_State* L );
|
||||||
int lcoreIsKeyDown( lua_State* L );
|
int lcoreIsKeyDown( lua_State* L );
|
||||||
int lcoreIsKeyReleased( lua_State* L );
|
int lcoreIsKeyReleased( lua_State* L );
|
||||||
int lcoreIsKeyUp( lua_State* L );
|
int lcoreIsKeyUp( lua_State* L );
|
||||||
@@ -155,6 +160,8 @@ int lcoreGetGamepadName( lua_State* L );
|
|||||||
int lcoreIsGamepadButtonPressed( lua_State* L );
|
int lcoreIsGamepadButtonPressed( lua_State* L );
|
||||||
int lcoreIsGamepadButtonDown( lua_State* L );
|
int lcoreIsGamepadButtonDown( lua_State* L );
|
||||||
int lcoreIsGamepadButtonReleased( lua_State* L );
|
int lcoreIsGamepadButtonReleased( lua_State* L );
|
||||||
|
int lcoreIsGamepadButtonUp( lua_State* L );
|
||||||
|
int lcoreGetGamepadButtonPressed( lua_State* L );
|
||||||
int lcoreGetGamepadAxisCount( lua_State* L );
|
int lcoreGetGamepadAxisCount( lua_State* L );
|
||||||
int lcoreGetGamepadAxisMovement( lua_State* L );
|
int lcoreGetGamepadAxisMovement( lua_State* L );
|
||||||
int lcoreSetGamepadMappings( lua_State* L );
|
int lcoreSetGamepadMappings( lua_State* L );
|
||||||
@@ -169,6 +176,7 @@ int lcoreSetMousePosition( lua_State* L );
|
|||||||
int lcoreSetMouseOffset( lua_State* L );
|
int lcoreSetMouseOffset( lua_State* L );
|
||||||
int lcoreSetMouseScale( lua_State* L );
|
int lcoreSetMouseScale( lua_State* L );
|
||||||
int lcoreGetMouseWheelMove( lua_State* L );
|
int lcoreGetMouseWheelMove( lua_State* L );
|
||||||
|
int lcoreGetMouseWheelMoveV( lua_State* L );
|
||||||
int lcoreSetMouseCursor( lua_State* L );
|
int lcoreSetMouseCursor( lua_State* L );
|
||||||
/* Input-related functions: touch. */
|
/* Input-related functions: touch. */
|
||||||
int lcoreGetTouchPosition( lua_State* L );
|
int lcoreGetTouchPosition( lua_State* L );
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ int lmodelsDrawLine3D( lua_State* L );
|
|||||||
int lmodelsDrawPoint3D( lua_State* L );
|
int lmodelsDrawPoint3D( lua_State* L );
|
||||||
int lmodelsDrawCircle3D( lua_State* L );
|
int lmodelsDrawCircle3D( lua_State* L );
|
||||||
int lmodelsDrawTriangle3D( lua_State* L );
|
int lmodelsDrawTriangle3D( lua_State* L );
|
||||||
|
int lmodelsDrawTriangleStrip3D( lua_State* L );
|
||||||
int lmodelsDrawCube( lua_State* L );
|
int lmodelsDrawCube( lua_State* L );
|
||||||
int lmodelsDrawCubeWires( lua_State* L );
|
int lmodelsDrawCubeWires( lua_State* L );
|
||||||
int lmodelsDrawSphere( lua_State* L );
|
int lmodelsDrawSphere( lua_State* L );
|
||||||
@@ -69,6 +70,7 @@ int lmodelsGenMeshPoly( lua_State* L );
|
|||||||
int lmodelsGenMeshPlane( lua_State* L );
|
int lmodelsGenMeshPlane( lua_State* L );
|
||||||
int lmodelsGenMeshCube( lua_State* L );
|
int lmodelsGenMeshCube( lua_State* L );
|
||||||
int lmodelsGenMeshSphere( lua_State* L );
|
int lmodelsGenMeshSphere( lua_State* L );
|
||||||
|
int lmodelsGenMeshHemiSphere( lua_State* L );
|
||||||
int lmodelsGenMeshCylinder( lua_State* L );
|
int lmodelsGenMeshCylinder( lua_State* L );
|
||||||
int lmodelsGenMeshCone( lua_State* L );
|
int lmodelsGenMeshCone( lua_State* L );
|
||||||
int lmodelsGenMeshTorus( lua_State* L );
|
int lmodelsGenMeshTorus( lua_State* L );
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ int ltextDrawTextBoxedTinted( lua_State* L );
|
|||||||
/* Text font info functions. */
|
/* Text font info functions. */
|
||||||
int ltextSetTextLineSpacing( lua_State* L );
|
int ltextSetTextLineSpacing( lua_State* L );
|
||||||
int ltextMeasureText( lua_State* L );
|
int ltextMeasureText( lua_State* L );
|
||||||
|
int ltextMeasureTextEx( lua_State* L );
|
||||||
int ltextGetGlyphIndex( lua_State* L );
|
int ltextGetGlyphIndex( lua_State* L );
|
||||||
int ltextGetGlyphInfo( lua_State* L );
|
int ltextGetGlyphInfo( lua_State* L );
|
||||||
int ltextGetGlyphInfoByIndex( lua_State* L );
|
int ltextGetGlyphInfoByIndex( lua_State* L );
|
||||||
@@ -54,6 +55,9 @@ int ltextGetCodepointNext( lua_State* L );
|
|||||||
int ltextGetCodepointPrevious( lua_State* L );
|
int ltextGetCodepointPrevious( lua_State* L );
|
||||||
int ltextCodepointToUTF8( lua_State* L );
|
int ltextCodepointToUTF8( lua_State* L );
|
||||||
/* Text strings management functions (no UTF-8 strings, only byte chars) */
|
/* Text strings management functions (no UTF-8 strings, only byte chars) */
|
||||||
|
int ltextTextSubtext( lua_State* L );
|
||||||
|
int ltextTextReplace( lua_State* L );
|
||||||
int ltextTextInsert( lua_State* L );
|
int ltextTextInsert( lua_State* L );
|
||||||
int ltextTextSplit( lua_State* L );
|
int ltextTextSplit( lua_State* L );
|
||||||
int ltextTextFindIndex( lua_State* L );
|
int ltextTextFindIndex( lua_State* L );
|
||||||
|
int ltextTextToPascal( lua_State* L );
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ int ltexturesGenImageText( lua_State* L );
|
|||||||
int ltexturesImageCopy( lua_State* L );
|
int ltexturesImageCopy( lua_State* L );
|
||||||
int ltexturesImageFromImage( lua_State* L );
|
int ltexturesImageFromImage( lua_State* L );
|
||||||
int ltexturesImageText( lua_State* L );
|
int ltexturesImageText( lua_State* L );
|
||||||
|
int ltexturesImageTextEx( lua_State* L );
|
||||||
int ltexturesImageFormat( lua_State* L );
|
int ltexturesImageFormat( lua_State* L );
|
||||||
int ltexturesImageToPOT( lua_State* L );
|
int ltexturesImageToPOT( lua_State* L );
|
||||||
int ltexturesImageCrop( lua_State* L );
|
int ltexturesImageCrop( lua_State* L );
|
||||||
@@ -70,6 +71,7 @@ int ltexturesImageDrawCircleLines( lua_State* L );
|
|||||||
int ltexturesImageDrawRectangle( lua_State* L );
|
int ltexturesImageDrawRectangle( lua_State* L );
|
||||||
int ltexturesImageDrawRectangleLines( lua_State* L );
|
int ltexturesImageDrawRectangleLines( lua_State* L );
|
||||||
int ltexturesImageDraw( lua_State* L );
|
int ltexturesImageDraw( lua_State* L );
|
||||||
|
int ltexturesImageDrawText( lua_State* L );
|
||||||
int ltexturesImageDrawTextEx( lua_State* L );
|
int ltexturesImageDrawTextEx( lua_State* L );
|
||||||
/* Texture loading functions. */
|
/* Texture loading functions. */
|
||||||
int ltexturesGetTextureDefault( lua_State* L );
|
int ltexturesGetTextureDefault( lua_State* L );
|
||||||
@@ -95,6 +97,7 @@ int ltexturesGetTextureMipmaps( lua_State* L );
|
|||||||
int ltexturesGetTextureFormat( lua_State* L );
|
int ltexturesGetTextureFormat( lua_State* L );
|
||||||
/* Texture drawing functions. */
|
/* Texture drawing functions. */
|
||||||
int ltexturesDrawTexture( lua_State* L );
|
int ltexturesDrawTexture( lua_State* L );
|
||||||
|
int ltexturesDrawTextureEx( lua_State* L );
|
||||||
int ltexturesDrawTextureRec( lua_State* L );
|
int ltexturesDrawTextureRec( lua_State* L );
|
||||||
int ltexturesDrawTexturePro( lua_State* L );
|
int ltexturesDrawTexturePro( lua_State* L );
|
||||||
int ltexturesDrawTextureNPatch( lua_State* L );
|
int ltexturesDrawTextureNPatch( lua_State* L );
|
||||||
@@ -116,5 +119,4 @@ int ltexturesColorContrast( lua_State* L );
|
|||||||
int ltexturesColorAlpha( lua_State* L );
|
int ltexturesColorAlpha( lua_State* L );
|
||||||
int ltexturesColorAlphaBlend( lua_State* L );
|
int ltexturesColorAlphaBlend( lua_State* L );
|
||||||
int ltexturesGetColor( lua_State* L );
|
int ltexturesGetColor( lua_State* L );
|
||||||
int ltexturesGetPixelColor( lua_State* L );
|
|
||||||
int ltexturesGetPixelDataSize( lua_State* L );
|
int ltexturesGetPixelDataSize( lua_State* L );
|
||||||
|
|||||||
38
src/audio.c
38
src/audio.c
@@ -188,6 +188,21 @@ int laudioIsSoundReady( lua_State* L ) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> RL.UpdateSound( Sound sound, Buffer data, int sampleCount )
|
||||||
|
|
||||||
|
Update sound buffer with new data
|
||||||
|
*/
|
||||||
|
int laudioUpdateSound( lua_State* L ) {
|
||||||
|
Sound* sound = uluaGetSound( L, 1 );
|
||||||
|
Buffer* buffer = uluaGetBuffer( L, 2 );
|
||||||
|
int sampleCount = luaL_checkinteger( L, 3 );
|
||||||
|
|
||||||
|
UpdateSound( *sound, buffer->data, sampleCount );
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> RL.UnloadWave( Wave wave )
|
> RL.UnloadWave( Wave wave )
|
||||||
|
|
||||||
@@ -386,6 +401,29 @@ int laudioWaveFormat( lua_State* L ) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> samples = RL.LoadWaveSamples( Wave wave )
|
||||||
|
|
||||||
|
Load samples data from wave as a 32bit float data array
|
||||||
|
|
||||||
|
- Success return float{}
|
||||||
|
*/
|
||||||
|
int laudioLoadWaveSamples( lua_State* L ) {
|
||||||
|
Wave* wave = uluaGetWave( L, 1 );
|
||||||
|
|
||||||
|
float* samples = LoadWaveSamples( *wave );
|
||||||
|
|
||||||
|
lua_createtable( L, wave->frameCount * wave->channels, 0 );
|
||||||
|
|
||||||
|
for ( int i = 0; i < wave->frameCount * wave->channels; ++i ) {
|
||||||
|
lua_pushnumber( L, samples[i] );
|
||||||
|
lua_rawseti( L, -2, i+1 );
|
||||||
|
}
|
||||||
|
UnloadWaveSamples( samples );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> wave = RL.WaveCopy( Wave wave )
|
> wave = RL.WaveCopy( Wave wave )
|
||||||
|
|
||||||
|
|||||||
124
src/core.c
124
src/core.c
@@ -1220,19 +1220,6 @@ int lcoreSetTargetFPS( lua_State* L ) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
> FPS = RL.GetFPS()
|
|
||||||
|
|
||||||
Get current FPS
|
|
||||||
|
|
||||||
- Success return int
|
|
||||||
*/
|
|
||||||
int lcoreGetFPS( lua_State* L ) {
|
|
||||||
lua_pushinteger( L, GetFPS() );
|
|
||||||
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> delta = RL.GetFrameTime()
|
> delta = RL.GetFrameTime()
|
||||||
|
|
||||||
@@ -1259,6 +1246,58 @@ int lcoreGetTime( lua_State* L ) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> FPS = RL.GetFPS()
|
||||||
|
|
||||||
|
Get current FPS
|
||||||
|
|
||||||
|
- Success return int
|
||||||
|
*/
|
||||||
|
int lcoreGetFPS( lua_State* L ) {
|
||||||
|
lua_pushinteger( L, GetFPS() );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
## Core - Custom frame control functions
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
> RL.SwapScreenBuffer()
|
||||||
|
|
||||||
|
Swap back buffer with front buffer (screen drawing)
|
||||||
|
*/
|
||||||
|
int lcoreSwapScreenBuffer( lua_State* L ) {
|
||||||
|
SwapScreenBuffer();
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> RL.PollInputEvents()
|
||||||
|
|
||||||
|
Register all input events
|
||||||
|
*/
|
||||||
|
int lcorePollInputEvents( lua_State* L ) {
|
||||||
|
PollInputEvents();
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> RL.WaitTime( number seconds )
|
||||||
|
|
||||||
|
Wait for some time (halt program execution)
|
||||||
|
*/
|
||||||
|
int lcoreWaitTime( lua_State* L ) {
|
||||||
|
double seconds = luaL_checknumber( L, 1 );
|
||||||
|
|
||||||
|
WaitTime( seconds );
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
## Core - Random values generation functions
|
## Core - Random values generation functions
|
||||||
*/
|
*/
|
||||||
@@ -1907,6 +1946,21 @@ int lcoreIsKeyPressed( lua_State* L ) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> pressed = RL.IsKeyPressedRepeat( int key )
|
||||||
|
|
||||||
|
Check if a key has been pressed again (Only PLATFORM_DESKTOP)
|
||||||
|
|
||||||
|
- Success return bool
|
||||||
|
*/
|
||||||
|
int lcoreIsKeyPressedRepeat( lua_State* L ) {
|
||||||
|
int key = luaL_checkinteger( L, 1 );
|
||||||
|
|
||||||
|
lua_pushboolean( L, IsKeyPressedRepeat( key ) );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> pressed = RL.IsKeyDown( int key )
|
> pressed = RL.IsKeyDown( int key )
|
||||||
|
|
||||||
@@ -2073,6 +2127,35 @@ int lcoreIsGamepadButtonReleased( lua_State* L ) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> notPressed = RL.IsGamepadButtonUp( int gamepad, int button )
|
||||||
|
|
||||||
|
Check if a gamepad button is NOT being pressed
|
||||||
|
|
||||||
|
- Success return bool
|
||||||
|
*/
|
||||||
|
int lcoreIsGamepadButtonUp( lua_State* L ) {
|
||||||
|
int gamepad = luaL_checkinteger( L, 1 );
|
||||||
|
int button = luaL_checkinteger( L, 2 );
|
||||||
|
|
||||||
|
lua_pushboolean( L, IsGamepadButtonUp( gamepad, button ) );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> button = RL.GetGamepadButtonPressed()
|
||||||
|
|
||||||
|
Get the last gamepad button pressed
|
||||||
|
|
||||||
|
- Success return int
|
||||||
|
*/
|
||||||
|
int lcoreGetGamepadButtonPressed( lua_State* L ) {
|
||||||
|
lua_pushinteger( L, GetGamepadButtonPressed() );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> count = RL.GetGamepadAxisCount( int gamepad )
|
> count = RL.GetGamepadAxisCount( int gamepad )
|
||||||
|
|
||||||
@@ -2251,7 +2334,7 @@ int lcoreSetMouseScale( lua_State* L ) {
|
|||||||
/*
|
/*
|
||||||
> movement = RL.GetMouseWheelMove()
|
> movement = RL.GetMouseWheelMove()
|
||||||
|
|
||||||
Returns mouse wheel movement Y
|
Get mouse wheel movement for X or Y, whichever is larger
|
||||||
|
|
||||||
- Success return float
|
- Success return float
|
||||||
*/
|
*/
|
||||||
@@ -2261,6 +2344,19 @@ int lcoreGetMouseWheelMove( lua_State* L ) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> movement = RL.GetMouseWheelMoveV()
|
||||||
|
|
||||||
|
Get mouse wheel movement for both X and Y
|
||||||
|
|
||||||
|
- Success return Vector2
|
||||||
|
*/
|
||||||
|
int lcoreGetMouseWheelMoveV( lua_State* L ) {
|
||||||
|
uluaPushVector2( L, GetMouseWheelMoveV() );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> RL.SetMouseCursor( int cursor )
|
> RL.SetMouseCursor( int cursor )
|
||||||
|
|
||||||
|
|||||||
@@ -1285,9 +1285,13 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "GetScreenToWorld2D", lcoreGetScreenToWorld2D );
|
assingGlobalFunction( "GetScreenToWorld2D", lcoreGetScreenToWorld2D );
|
||||||
/* Timing-related functions. */
|
/* Timing-related functions. */
|
||||||
assingGlobalFunction( "SetTargetFPS", lcoreSetTargetFPS );
|
assingGlobalFunction( "SetTargetFPS", lcoreSetTargetFPS );
|
||||||
assingGlobalFunction( "GetFPS", lcoreGetFPS );
|
|
||||||
assingGlobalFunction( "GetFrameTime", lcoreGetFrameTime );
|
assingGlobalFunction( "GetFrameTime", lcoreGetFrameTime );
|
||||||
assingGlobalFunction( "GetTime", lcoreGetTime );
|
assingGlobalFunction( "GetTime", lcoreGetTime );
|
||||||
|
assingGlobalFunction( "GetFPS", lcoreGetFPS );
|
||||||
|
/* Custom frame control functions. */
|
||||||
|
assingGlobalFunction( "SwapScreenBuffer", lcoreSwapScreenBuffer );
|
||||||
|
assingGlobalFunction( "PollInputEvents", lcorePollInputEvents );
|
||||||
|
assingGlobalFunction( "WaitTime", lcoreWaitTime );
|
||||||
/* Random values generation functions. */
|
/* Random values generation functions. */
|
||||||
assingGlobalFunction( "SetRandomSeed", lcoreSetRandomSeed );
|
assingGlobalFunction( "SetRandomSeed", lcoreSetRandomSeed );
|
||||||
assingGlobalFunction( "GetRandomValue", lcoreGetRandomValue );
|
assingGlobalFunction( "GetRandomValue", lcoreGetRandomValue );
|
||||||
@@ -1335,6 +1339,7 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "DecodeDataBase64", lcoreDecodeDataBase64 );
|
assingGlobalFunction( "DecodeDataBase64", lcoreDecodeDataBase64 );
|
||||||
/* Input-related functions: keyboard. */
|
/* Input-related functions: keyboard. */
|
||||||
assingGlobalFunction( "IsKeyPressed", lcoreIsKeyPressed );
|
assingGlobalFunction( "IsKeyPressed", lcoreIsKeyPressed );
|
||||||
|
assingGlobalFunction( "IsKeyPressedRepeat", lcoreIsKeyPressedRepeat );
|
||||||
assingGlobalFunction( "IsKeyDown", lcoreIsKeyDown );
|
assingGlobalFunction( "IsKeyDown", lcoreIsKeyDown );
|
||||||
assingGlobalFunction( "IsKeyReleased", lcoreIsKeyReleased );
|
assingGlobalFunction( "IsKeyReleased", lcoreIsKeyReleased );
|
||||||
assingGlobalFunction( "IsKeyUp", lcoreIsKeyUp );
|
assingGlobalFunction( "IsKeyUp", lcoreIsKeyUp );
|
||||||
@@ -1347,6 +1352,8 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "IsGamepadButtonPressed", lcoreIsGamepadButtonPressed );
|
assingGlobalFunction( "IsGamepadButtonPressed", lcoreIsGamepadButtonPressed );
|
||||||
assingGlobalFunction( "IsGamepadButtonDown", lcoreIsGamepadButtonDown );
|
assingGlobalFunction( "IsGamepadButtonDown", lcoreIsGamepadButtonDown );
|
||||||
assingGlobalFunction( "IsGamepadButtonReleased", lcoreIsGamepadButtonReleased );
|
assingGlobalFunction( "IsGamepadButtonReleased", lcoreIsGamepadButtonReleased );
|
||||||
|
assingGlobalFunction( "IsGamepadButtonUp", lcoreIsGamepadButtonUp );
|
||||||
|
assingGlobalFunction( "GetGamepadButtonPressed", lcoreGetGamepadButtonPressed );
|
||||||
assingGlobalFunction( "GetGamepadAxisCount", lcoreGetGamepadAxisCount );
|
assingGlobalFunction( "GetGamepadAxisCount", lcoreGetGamepadAxisCount );
|
||||||
assingGlobalFunction( "GetGamepadAxisMovement", lcoreGetGamepadAxisMovement );
|
assingGlobalFunction( "GetGamepadAxisMovement", lcoreGetGamepadAxisMovement );
|
||||||
assingGlobalFunction( "SetGamepadMappings", lcoreSetGamepadMappings );
|
assingGlobalFunction( "SetGamepadMappings", lcoreSetGamepadMappings );
|
||||||
@@ -1361,6 +1368,7 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "SetMouseOffset", lcoreSetMouseOffset );
|
assingGlobalFunction( "SetMouseOffset", lcoreSetMouseOffset );
|
||||||
assingGlobalFunction( "SetMouseScale", lcoreSetMouseScale );
|
assingGlobalFunction( "SetMouseScale", lcoreSetMouseScale );
|
||||||
assingGlobalFunction( "GetMouseWheelMove", lcoreGetMouseWheelMove );
|
assingGlobalFunction( "GetMouseWheelMove", lcoreGetMouseWheelMove );
|
||||||
|
assingGlobalFunction( "GetMouseWheelMoveV", lcoreGetMouseWheelMoveV );
|
||||||
assingGlobalFunction( "SetMouseCursor", lcoreSetMouseCursor );
|
assingGlobalFunction( "SetMouseCursor", lcoreSetMouseCursor );
|
||||||
/* Input-related functions: touch */
|
/* Input-related functions: touch */
|
||||||
assingGlobalFunction( "GetTouchPosition", lcoreGetTouchPosition );
|
assingGlobalFunction( "GetTouchPosition", lcoreGetTouchPosition );
|
||||||
@@ -1513,6 +1521,7 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "ImageCopy", ltexturesImageCopy );
|
assingGlobalFunction( "ImageCopy", ltexturesImageCopy );
|
||||||
assingGlobalFunction( "ImageFromImage", ltexturesImageFromImage );
|
assingGlobalFunction( "ImageFromImage", ltexturesImageFromImage );
|
||||||
assingGlobalFunction( "ImageText", ltexturesImageText );
|
assingGlobalFunction( "ImageText", ltexturesImageText );
|
||||||
|
assingGlobalFunction( "ImageTextEx", ltexturesImageTextEx );
|
||||||
assingGlobalFunction( "ImageFormat", ltexturesImageFormat );
|
assingGlobalFunction( "ImageFormat", ltexturesImageFormat );
|
||||||
assingGlobalFunction( "ImageToPOT", ltexturesImageToPOT );
|
assingGlobalFunction( "ImageToPOT", ltexturesImageToPOT );
|
||||||
assingGlobalFunction( "ImageCrop", ltexturesImageCrop );
|
assingGlobalFunction( "ImageCrop", ltexturesImageCrop );
|
||||||
@@ -1555,6 +1564,7 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "ImageDrawRectangle", ltexturesImageDrawRectangle );
|
assingGlobalFunction( "ImageDrawRectangle", ltexturesImageDrawRectangle );
|
||||||
assingGlobalFunction( "ImageDrawRectangleLines", ltexturesImageDrawRectangleLines );
|
assingGlobalFunction( "ImageDrawRectangleLines", ltexturesImageDrawRectangleLines );
|
||||||
assingGlobalFunction( "ImageDraw", ltexturesImageDraw );
|
assingGlobalFunction( "ImageDraw", ltexturesImageDraw );
|
||||||
|
assingGlobalFunction( "ImageDrawText", ltexturesImageDrawText );
|
||||||
assingGlobalFunction( "ImageDrawTextEx", ltexturesImageDrawTextEx );
|
assingGlobalFunction( "ImageDrawTextEx", ltexturesImageDrawTextEx );
|
||||||
/* Texture loading functions. */
|
/* Texture loading functions. */
|
||||||
assingGlobalFunction( "GetTextureDefault", ltexturesGetTextureDefault );
|
assingGlobalFunction( "GetTextureDefault", ltexturesGetTextureDefault );
|
||||||
@@ -1580,6 +1590,7 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "GetTextureFormat", ltexturesGetTextureFormat );
|
assingGlobalFunction( "GetTextureFormat", ltexturesGetTextureFormat );
|
||||||
/* Texture drawing functions. */
|
/* Texture drawing functions. */
|
||||||
assingGlobalFunction( "DrawTexture", ltexturesDrawTexture );
|
assingGlobalFunction( "DrawTexture", ltexturesDrawTexture );
|
||||||
|
assingGlobalFunction( "DrawTextureEx", ltexturesDrawTextureEx );
|
||||||
assingGlobalFunction( "DrawTextureRec", ltexturesDrawTextureRec );
|
assingGlobalFunction( "DrawTextureRec", ltexturesDrawTextureRec );
|
||||||
assingGlobalFunction( "DrawTexturePro", ltexturesDrawTexturePro );
|
assingGlobalFunction( "DrawTexturePro", ltexturesDrawTexturePro );
|
||||||
assingGlobalFunction( "DrawTextureNPatch", ltexturesDrawTextureNPatch );
|
assingGlobalFunction( "DrawTextureNPatch", ltexturesDrawTextureNPatch );
|
||||||
@@ -1601,7 +1612,6 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "ColorAlpha", ltexturesColorAlpha );
|
assingGlobalFunction( "ColorAlpha", ltexturesColorAlpha );
|
||||||
assingGlobalFunction( "ColorAlphaBlend", ltexturesColorAlphaBlend );
|
assingGlobalFunction( "ColorAlphaBlend", ltexturesColorAlphaBlend );
|
||||||
assingGlobalFunction( "GetColor", ltexturesGetColor );
|
assingGlobalFunction( "GetColor", ltexturesGetColor );
|
||||||
assingGlobalFunction( "GetPixelColor", ltexturesGetPixelColor );
|
|
||||||
assingGlobalFunction( "GetPixelDataSize", ltexturesGetPixelDataSize );
|
assingGlobalFunction( "GetPixelDataSize", ltexturesGetPixelDataSize );
|
||||||
|
|
||||||
/* Models. */
|
/* Models. */
|
||||||
@@ -1610,6 +1620,7 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "DrawPoint3D", lmodelsDrawPoint3D );
|
assingGlobalFunction( "DrawPoint3D", lmodelsDrawPoint3D );
|
||||||
assingGlobalFunction( "DrawCircle3D", lmodelsDrawCircle3D );
|
assingGlobalFunction( "DrawCircle3D", lmodelsDrawCircle3D );
|
||||||
assingGlobalFunction( "DrawTriangle3D", lmodelsDrawTriangle3D );
|
assingGlobalFunction( "DrawTriangle3D", lmodelsDrawTriangle3D );
|
||||||
|
assingGlobalFunction( "DrawTriangleStrip3D", lmodelsDrawTriangleStrip3D );
|
||||||
assingGlobalFunction( "DrawCube", lmodelsDrawCube );
|
assingGlobalFunction( "DrawCube", lmodelsDrawCube );
|
||||||
assingGlobalFunction( "DrawCubeWires", lmodelsDrawCubeWires );
|
assingGlobalFunction( "DrawCubeWires", lmodelsDrawCubeWires );
|
||||||
assingGlobalFunction( "DrawSphere", lmodelsDrawSphere );
|
assingGlobalFunction( "DrawSphere", lmodelsDrawSphere );
|
||||||
@@ -1668,11 +1679,13 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "GenMeshPlane", lmodelsGenMeshPlane );
|
assingGlobalFunction( "GenMeshPlane", lmodelsGenMeshPlane );
|
||||||
assingGlobalFunction( "GenMeshCube", lmodelsGenMeshCube );
|
assingGlobalFunction( "GenMeshCube", lmodelsGenMeshCube );
|
||||||
assingGlobalFunction( "GenMeshSphere", lmodelsGenMeshSphere );
|
assingGlobalFunction( "GenMeshSphere", lmodelsGenMeshSphere );
|
||||||
|
assingGlobalFunction( "GenMeshHemiSphere", lmodelsGenMeshHemiSphere );
|
||||||
assingGlobalFunction( "GenMeshCylinder", lmodelsGenMeshCylinder );
|
assingGlobalFunction( "GenMeshCylinder", lmodelsGenMeshCylinder );
|
||||||
assingGlobalFunction( "GenMeshCone", lmodelsGenMeshCone );
|
assingGlobalFunction( "GenMeshCone", lmodelsGenMeshCone );
|
||||||
assingGlobalFunction( "GenMeshTorus", lmodelsGenMeshTorus );
|
assingGlobalFunction( "GenMeshTorus", lmodelsGenMeshTorus );
|
||||||
assingGlobalFunction( "GenMeshKnot", lmodelsGenMeshKnot );
|
assingGlobalFunction( "GenMeshKnot", lmodelsGenMeshKnot );
|
||||||
assingGlobalFunction( "GenMeshHeightmap", lmodelsGenMeshHeightmap );
|
assingGlobalFunction( "GenMeshHeightmap", lmodelsGenMeshHeightmap );
|
||||||
|
assingGlobalFunction( "GenMeshCubicmap", lmodelsGenMeshCubicmap );
|
||||||
assingGlobalFunction( "GenMeshCustom", lmodelsGenMeshCustom );
|
assingGlobalFunction( "GenMeshCustom", lmodelsGenMeshCustom );
|
||||||
/* Material management functions. */
|
/* Material management functions. */
|
||||||
assingGlobalFunction( "LoadMaterials", lmodelsLoadMaterials );
|
assingGlobalFunction( "LoadMaterials", lmodelsLoadMaterials );
|
||||||
@@ -1740,6 +1753,7 @@ void luaRegister() {
|
|||||||
/* Text font info functions. */
|
/* Text font info functions. */
|
||||||
assingGlobalFunction( "SetTextLineSpacing", ltextSetTextLineSpacing );
|
assingGlobalFunction( "SetTextLineSpacing", ltextSetTextLineSpacing );
|
||||||
assingGlobalFunction( "MeasureText", ltextMeasureText );
|
assingGlobalFunction( "MeasureText", ltextMeasureText );
|
||||||
|
assingGlobalFunction( "MeasureTextEx", ltextMeasureTextEx );
|
||||||
assingGlobalFunction( "GetGlyphIndex", ltextGetGlyphIndex );
|
assingGlobalFunction( "GetGlyphIndex", ltextGetGlyphIndex );
|
||||||
assingGlobalFunction( "GetGlyphInfo", ltextGetGlyphInfo );
|
assingGlobalFunction( "GetGlyphInfo", ltextGetGlyphInfo );
|
||||||
assingGlobalFunction( "GetGlyphInfoByIndex", ltextGetGlyphInfoByIndex );
|
assingGlobalFunction( "GetGlyphInfoByIndex", ltextGetGlyphInfoByIndex );
|
||||||
@@ -1769,9 +1783,12 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "GetCodepointPrevious", ltextGetCodepointPrevious );
|
assingGlobalFunction( "GetCodepointPrevious", ltextGetCodepointPrevious );
|
||||||
assingGlobalFunction( "CodepointToUTF8", ltextCodepointToUTF8 );
|
assingGlobalFunction( "CodepointToUTF8", ltextCodepointToUTF8 );
|
||||||
/* Text strings management functions (no UTF-8 strings, only byte chars) */
|
/* Text strings management functions (no UTF-8 strings, only byte chars) */
|
||||||
|
assingGlobalFunction( "TextSubtext", ltextTextSubtext );
|
||||||
|
assingGlobalFunction( "TextReplace", ltextTextReplace );
|
||||||
assingGlobalFunction( "TextInsert", ltextTextInsert );
|
assingGlobalFunction( "TextInsert", ltextTextInsert );
|
||||||
assingGlobalFunction( "TextSplit", ltextTextSplit );
|
assingGlobalFunction( "TextSplit", ltextTextSplit );
|
||||||
assingGlobalFunction( "TextFindIndex", ltextTextFindIndex );
|
assingGlobalFunction( "TextFindIndex", ltextTextFindIndex );
|
||||||
|
assingGlobalFunction( "TextToPascal", ltextTextToPascal );
|
||||||
|
|
||||||
/* Audio. */
|
/* Audio. */
|
||||||
/* Audio device management functions. */
|
/* Audio device management functions. */
|
||||||
@@ -1788,6 +1805,7 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "LoadSoundFromWave", laudioLoadSoundFromWave );
|
assingGlobalFunction( "LoadSoundFromWave", laudioLoadSoundFromWave );
|
||||||
assingGlobalFunction( "LoadSoundAlias", laudioLoadSoundAlias );
|
assingGlobalFunction( "LoadSoundAlias", laudioLoadSoundAlias );
|
||||||
assingGlobalFunction( "IsSoundReady", laudioIsSoundReady );
|
assingGlobalFunction( "IsSoundReady", laudioIsSoundReady );
|
||||||
|
assingGlobalFunction( "UpdateSound", laudioUpdateSound );
|
||||||
assingGlobalFunction( "UnloadWave", laudioUnloadWave );
|
assingGlobalFunction( "UnloadWave", laudioUnloadWave );
|
||||||
assingGlobalFunction( "UnloadSound", laudioUnloadSound );
|
assingGlobalFunction( "UnloadSound", laudioUnloadSound );
|
||||||
assingGlobalFunction( "UnloadSoundAlias", laudioUnloadSoundAlias );
|
assingGlobalFunction( "UnloadSoundAlias", laudioUnloadSoundAlias );
|
||||||
@@ -1803,6 +1821,7 @@ void luaRegister() {
|
|||||||
assingGlobalFunction( "SetSoundPitch", laudioSetSoundPitch );
|
assingGlobalFunction( "SetSoundPitch", laudioSetSoundPitch );
|
||||||
assingGlobalFunction( "SetSoundPan", laudioSetSoundPan );
|
assingGlobalFunction( "SetSoundPan", laudioSetSoundPan );
|
||||||
assingGlobalFunction( "WaveFormat", laudioWaveFormat );
|
assingGlobalFunction( "WaveFormat", laudioWaveFormat );
|
||||||
|
assingGlobalFunction( "LoadWaveSamples", laudioLoadWaveSamples );
|
||||||
assingGlobalFunction( "WaveCopy", laudioWaveCopy );
|
assingGlobalFunction( "WaveCopy", laudioWaveCopy );
|
||||||
assingGlobalFunction( "WaveCrop", laudioWaveCrop );
|
assingGlobalFunction( "WaveCrop", laudioWaveCrop );
|
||||||
/* Music management functions. */
|
/* Music management functions. */
|
||||||
|
|||||||
43
src/models.c
43
src/models.c
@@ -172,6 +172,32 @@ int lmodelsDrawTriangle3D( lua_State* L ) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> RL.DrawTriangleStrip3D( Vector3{} points, Color color )
|
||||||
|
|
||||||
|
Draw a triangle strip defined by points
|
||||||
|
*/
|
||||||
|
int lmodelsDrawTriangleStrip3D( lua_State* L ) {
|
||||||
|
int pointCount = uluaGetTableLen( L, 1 );
|
||||||
|
Color color = uluaGetColor( L, 2 );
|
||||||
|
|
||||||
|
Vector3 points[ pointCount ];
|
||||||
|
|
||||||
|
int t = 1, i = 0;
|
||||||
|
lua_pushnil( L );
|
||||||
|
|
||||||
|
while ( lua_next( L, t ) != 0 ) {
|
||||||
|
if ( lua_istable( L, -1 ) ) {
|
||||||
|
points[i] = uluaGetVector3( L, lua_gettop( L ) );
|
||||||
|
}
|
||||||
|
i++;
|
||||||
|
lua_pop( L, 1 );
|
||||||
|
}
|
||||||
|
DrawTriangleStrip3D( points, pointCount, color );
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> RL.DrawCube( Vector3 position, Vector3 size, Color color )
|
> RL.DrawCube( Vector3 position, Vector3 size, Color color )
|
||||||
|
|
||||||
@@ -1304,6 +1330,23 @@ int lmodelsGenMeshSphere( lua_State* L ) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> mesh = RL.GenMeshHemiSphere( float radius, int rings, int slices )
|
||||||
|
|
||||||
|
Generate half-sphere mesh (no bottom cap)
|
||||||
|
|
||||||
|
- Success return Mesh
|
||||||
|
*/
|
||||||
|
int lmodelsGenMeshHemiSphere( lua_State* L ) {
|
||||||
|
float radius = luaL_checknumber( L, 1 );
|
||||||
|
int rings = luaL_checkinteger( L, 2 );
|
||||||
|
int slices = luaL_checkinteger( L, 3 );
|
||||||
|
|
||||||
|
uluaPushMesh( L, GenMeshHemiSphere( radius, rings, slices ) );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> mesh = RL.GenMeshCylinder( float radius, float height, int slices )
|
> mesh = RL.GenMeshCylinder( float radius, float height, int slices )
|
||||||
|
|
||||||
|
|||||||
75
src/text.c
75
src/text.c
@@ -663,18 +663,35 @@ int ltextSetTextLineSpacing( lua_State* L ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> size = RL.MeasureText( Font font, string text, float fontSize, float spacing )
|
> width = RL.MeasureText( string text, int fontSize )
|
||||||
|
|
||||||
|
Measure string width for default font
|
||||||
|
|
||||||
|
- Success return int
|
||||||
|
*/
|
||||||
|
int ltextMeasureText( lua_State* L ) {
|
||||||
|
const char* text = luaL_checkstring( L, 1 );
|
||||||
|
int fontSize = luaL_checkinteger( L, 2 );
|
||||||
|
|
||||||
|
lua_pushinteger( L, MeasureText( text, fontSize ) );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> size = RL.MeasureTextEx( Font font, string text, float fontSize, float spacing )
|
||||||
|
|
||||||
Measure string size for Font
|
Measure string size for Font
|
||||||
|
|
||||||
- Success return Vector2
|
- Success return Vector2
|
||||||
*/
|
*/
|
||||||
int ltextMeasureText( lua_State* L ) {
|
int ltextMeasureTextEx( lua_State* L ) {
|
||||||
Font* font = uluaGetFont( L, 1 );
|
Font* font = uluaGetFont( L, 1 );
|
||||||
|
const char* text = luaL_checkstring( L, 2 );
|
||||||
float fontSize = luaL_checknumber( L, 3 );
|
float fontSize = luaL_checknumber( L, 3 );
|
||||||
float spacing = luaL_checknumber( L, 4 );
|
float spacing = luaL_checknumber( L, 4 );
|
||||||
|
|
||||||
uluaPushVector2( L, MeasureTextEx( *font, luaL_checkstring( L, 2 ), fontSize, spacing ) );
|
uluaPushVector2( L, MeasureTextEx( *font, text, fontSize, spacing ) );
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@@ -1143,6 +1160,43 @@ int ltextCodepointToUTF8( lua_State* L ) {
|
|||||||
## Text - Text strings management functions (no UTF-8 strings, only byte chars)
|
## Text - Text strings management functions (no UTF-8 strings, only byte chars)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
> text = RL.TextSubtext( string text, int position, int length )
|
||||||
|
|
||||||
|
Get a piece of a text string
|
||||||
|
|
||||||
|
- Success return string
|
||||||
|
*/
|
||||||
|
int ltextTextSubtext( lua_State* L ) {
|
||||||
|
const char* text = luaL_checkstring( L, 1 );
|
||||||
|
int position = luaL_checkinteger( L, 2 );
|
||||||
|
int length = luaL_checkinteger( L, 3 );
|
||||||
|
|
||||||
|
lua_pushstring( L, TextSubtext( text, position, length ) );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> text = RL.TextReplace( string text, string replace, string by )
|
||||||
|
|
||||||
|
Replace text string
|
||||||
|
|
||||||
|
- Success return string
|
||||||
|
*/
|
||||||
|
int ltextTextReplace( lua_State* L ) {
|
||||||
|
char* text = (char*)luaL_checkstring( L, 1 );
|
||||||
|
const char* replace = luaL_checkstring( L, 2 );
|
||||||
|
const char* by = luaL_checkstring( L, 3 );
|
||||||
|
|
||||||
|
char* result = TextReplace( text, replace, by );
|
||||||
|
|
||||||
|
lua_pushstring( L, result );
|
||||||
|
free( result );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> text = RL.TextInsert( string text, string insert, int position )
|
> text = RL.TextInsert( string text, string insert, int position )
|
||||||
|
|
||||||
@@ -1213,3 +1267,18 @@ int ltextTextFindIndex( lua_State* L ) {
|
|||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> text = RL.TextToPascal( string text )
|
||||||
|
|
||||||
|
Get Pascal case notation version of provided string
|
||||||
|
|
||||||
|
- Success return string
|
||||||
|
*/
|
||||||
|
int ltextTextToPascal( lua_State* L ) {
|
||||||
|
const char* text = luaL_checkstring( L, 1 );
|
||||||
|
|
||||||
|
lua_pushstring( L, TextToPascal( text ) );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|||||||
@@ -433,19 +433,37 @@ int ltexturesImageFromImage( lua_State* L ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> image = RL.ImageText( Font font, string text, float fontSize, float spacing, Color tint )
|
> image = RL.ImageText( string text, int fontSize, Color tint )
|
||||||
|
|
||||||
|
Create an image from text (default font)
|
||||||
|
|
||||||
|
- Success return Image
|
||||||
|
*/
|
||||||
|
int ltexturesImageText( lua_State* L ) {
|
||||||
|
const char* text = luaL_checkstring( L, 1 );
|
||||||
|
int fontSize = luaL_checkinteger( L, 2 );
|
||||||
|
Color tint = uluaGetColor( L, 3 );
|
||||||
|
|
||||||
|
uluaPushImage( L, ImageText( text, fontSize, tint ) );
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> image = RL.ImageTextEx( Font font, string text, float fontSize, float spacing, Color tint )
|
||||||
|
|
||||||
Create an image from text (custom sprite font)
|
Create an image from text (custom sprite font)
|
||||||
|
|
||||||
- Success return Image
|
- Success return Image
|
||||||
*/
|
*/
|
||||||
int ltexturesImageText( lua_State* L ) {
|
int ltexturesImageTextEx( lua_State* L ) {
|
||||||
Font* font = uluaGetFont( L, 1 );
|
Font* font = uluaGetFont( L, 1 );
|
||||||
float fontSize = lua_tonumber( L, 3 );
|
const char* text = luaL_checkstring( L, 2 );
|
||||||
float spacing = lua_tonumber( L, 4 );
|
float fontSize = luaL_checknumber( L, 3 );
|
||||||
|
float spacing = luaL_checknumber( L, 4 );
|
||||||
Color tint = uluaGetColor( L, 5 );
|
Color tint = uluaGetColor( L, 5 );
|
||||||
|
|
||||||
uluaPushImage( L, ImageTextEx( *font, luaL_checkstring( L, 2 ), fontSize, spacing, tint ) );
|
uluaPushImage( L, ImageTextEx( *font, text, fontSize, spacing, tint ) );
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@@ -499,7 +517,7 @@ Crop image depending on alpha value
|
|||||||
*/
|
*/
|
||||||
int ltexturesImageAlphaCrop( lua_State* L ) {
|
int ltexturesImageAlphaCrop( lua_State* L ) {
|
||||||
Image* image = uluaGetImage( L, 1 );
|
Image* image = uluaGetImage( L, 1 );
|
||||||
float threshold = lua_tonumber( L, 2 );
|
float threshold = luaL_checknumber( L, 2 );
|
||||||
|
|
||||||
ImageAlphaCrop( image, threshold );
|
ImageAlphaCrop( image, threshold );
|
||||||
|
|
||||||
@@ -514,7 +532,7 @@ Clear alpha channel to desired color
|
|||||||
int ltexturesImageAlphaClear( lua_State* L ) {
|
int ltexturesImageAlphaClear( lua_State* L ) {
|
||||||
Image* image = uluaGetImage( L, 1 );
|
Image* image = uluaGetImage( L, 1 );
|
||||||
Color color = uluaGetColor( L, 2 );
|
Color color = uluaGetColor( L, 2 );
|
||||||
float threshold = lua_tonumber( L, 3 );
|
float threshold = luaL_checknumber( L, 3 );
|
||||||
|
|
||||||
ImageAlphaClear( image, color, threshold );
|
ImageAlphaClear( image, color, threshold );
|
||||||
|
|
||||||
@@ -1063,6 +1081,23 @@ int ltexturesImageDraw( lua_State* L ) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> RL.ImageDrawText( Image dst, string text, Vector2 position, float fontSize, Color tint )
|
||||||
|
|
||||||
|
Draw text (using default font) within an image (destination)
|
||||||
|
*/
|
||||||
|
int ltexturesImageDrawText( lua_State* L ) {
|
||||||
|
Image* image = uluaGetImage( L, 1 );
|
||||||
|
const char* text = luaL_checkstring( L, 2 );
|
||||||
|
Vector2 position = uluaGetVector2( L, 3 );
|
||||||
|
float fontSize = luaL_checknumber( L, 4 );
|
||||||
|
Color tint = uluaGetColor( L, 5 );
|
||||||
|
|
||||||
|
ImageDrawText( image, text, position.x, position.y, fontSize, tint );
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> RL.ImageDrawTextEx( Image dst, Font font, string text, Vector2 position, float fontSize, float spacing, Color tint )
|
> RL.ImageDrawTextEx( Image dst, Font font, string text, Vector2 position, float fontSize, float spacing, Color tint )
|
||||||
|
|
||||||
@@ -1071,12 +1106,13 @@ Draw text (Custom sprite font) within an image (Destination)
|
|||||||
int ltexturesImageDrawTextEx( lua_State* L ) {
|
int ltexturesImageDrawTextEx( lua_State* L ) {
|
||||||
Image* image = uluaGetImage( L, 1 );
|
Image* image = uluaGetImage( L, 1 );
|
||||||
Font* font = uluaGetFont( L, 2 );
|
Font* font = uluaGetFont( L, 2 );
|
||||||
|
const char* text = luaL_checkstring( L, 3 );
|
||||||
Vector2 position = uluaGetVector2( L, 4 );
|
Vector2 position = uluaGetVector2( L, 4 );
|
||||||
float fontSize = luaL_checknumber( L, 5 );
|
float fontSize = luaL_checknumber( L, 5 );
|
||||||
float spacing = luaL_checknumber( L, 6 );
|
float spacing = luaL_checknumber( L, 6 );
|
||||||
Color tint = uluaGetColor( L, 7 );
|
Color tint = uluaGetColor( L, 7 );
|
||||||
|
|
||||||
ImageDrawTextEx( image, *font, luaL_checkstring( L, 3 ), position, fontSize, spacing, tint );
|
ImageDrawTextEx( image, *font, text, position, fontSize, spacing, tint );
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -1487,10 +1523,26 @@ Draw a Texture2D
|
|||||||
*/
|
*/
|
||||||
int ltexturesDrawTexture( lua_State* L ) {
|
int ltexturesDrawTexture( lua_State* L ) {
|
||||||
Texture* texture = uluaGetTexture( L, 1 );
|
Texture* texture = uluaGetTexture( L, 1 );
|
||||||
Vector2 pos = uluaGetVector2( L, 2 );
|
Vector2 position = uluaGetVector2( L, 2 );
|
||||||
Color color = uluaGetColor( L, 3 );
|
Color color = uluaGetColor( L, 3 );
|
||||||
|
|
||||||
DrawTexture( *texture, pos.x, pos.y, color );
|
DrawTexture( *texture, position.x, position.y, color );
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
> RL.DrawTextureEx( Texture texture, Vector2 position, float rotation, float scale, Color tint )
|
||||||
|
|
||||||
|
Draw a Texture2D with extended parameters
|
||||||
|
*/
|
||||||
|
int ltexturesDrawTextureEx( lua_State* L ) {
|
||||||
|
Texture* texture = uluaGetTexture( L, 1 );
|
||||||
|
Vector2 position = uluaGetVector2( L, 2 );
|
||||||
|
float rotation = luaL_checknumber( L, 3 );
|
||||||
|
float scale = luaL_checknumber( L, 4 );
|
||||||
|
Color color = uluaGetColor( L, 5 );
|
||||||
|
|
||||||
|
DrawTextureEx( *texture, position, rotation, scale, color );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1502,10 +1554,10 @@ Draw a part of a texture defined by a rectangle
|
|||||||
int ltexturesDrawTextureRec( lua_State* L ) {
|
int ltexturesDrawTextureRec( lua_State* L ) {
|
||||||
Texture* texture = uluaGetTexture( L, 1 );
|
Texture* texture = uluaGetTexture( L, 1 );
|
||||||
Rectangle srcRect = uluaGetRectangle( L, 2 );
|
Rectangle srcRect = uluaGetRectangle( L, 2 );
|
||||||
Vector2 pos = uluaGetVector2( L, 3 );
|
Vector2 position = uluaGetVector2( L, 3 );
|
||||||
Color tint = uluaGetColor( L, 4 );
|
Color tint = uluaGetColor( L, 4 );
|
||||||
|
|
||||||
DrawTextureRec( *texture, srcRect, pos, tint );
|
DrawTextureRec( *texture, srcRect, position, tint );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1519,10 +1571,10 @@ int ltexturesDrawTexturePro( lua_State* L ) {
|
|||||||
Rectangle srcRect = uluaGetRectangle( L, 2 );
|
Rectangle srcRect = uluaGetRectangle( L, 2 );
|
||||||
Rectangle dstRect = uluaGetRectangle( L, 3 );
|
Rectangle dstRect = uluaGetRectangle( L, 3 );
|
||||||
Vector2 origin = uluaGetVector2( L, 4 );
|
Vector2 origin = uluaGetVector2( L, 4 );
|
||||||
float rot = luaL_checknumber( L, 5 );
|
float rotation = luaL_checknumber( L, 5 );
|
||||||
Color color = uluaGetColor( L, 6 );
|
Color color = uluaGetColor( L, 6 );
|
||||||
|
|
||||||
DrawTexturePro( *texture, srcRect, dstRect, origin, rot, color );
|
DrawTexturePro( *texture, srcRect, dstRect, origin, rotation, color );
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -2005,24 +2057,6 @@ int ltexturesGetColor( lua_State* L ) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
> color = RL.GetPixelColor( Texture texture, Vector2 position )
|
|
||||||
|
|
||||||
Get pixel color from source texture
|
|
||||||
|
|
||||||
- Success return Color
|
|
||||||
*/
|
|
||||||
int ltexturesGetPixelColor( lua_State* L ) {
|
|
||||||
Texture* texture = uluaGetTexture( L, 1 );
|
|
||||||
Vector2 pos = uluaGetVector2( L, 2 );
|
|
||||||
Image srcImage = LoadImageFromTexture( *texture );
|
|
||||||
|
|
||||||
uluaPushColor( L, GetImageColor( srcImage, pos.x, pos.y ) );
|
|
||||||
UnloadImage( srcImage );
|
|
||||||
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
> size = RL.GetPixelDataSize( int width, int height, int format )
|
> size = RL.GetPixelDataSize( int width, int height, int format )
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user