Update README
This commit is contained in:
parent
0f9020902c
commit
71b3d7e581
45
README.md
45
README.md
@ -56,6 +56,51 @@ If you need to update raylib binding, there are few tasks to do :
|
|||||||
- update `tools/api.h` functions signatures, keep file clean with exactly one function per line.
|
- update `tools/api.h` functions signatures, keep file clean with exactly one function per line.
|
||||||
- update struct definitions in `src/raylib.lua`
|
- update struct definitions in `src/raylib.lua`
|
||||||
|
|
||||||
|
### Loading embedded ressources
|
||||||
|
|
||||||
|
Currently, raylib-lua doesn't support loading ressources from payload using
|
||||||
|
raylib API. However, you can still arbitrarily load files from payload using
|
||||||
|
`raylua.loadfile` which returns a boolean indicating success and file content.
|
||||||
|
|
||||||
|
### Making structs
|
||||||
|
|
||||||
|
To make raylib structs, you need to use the LuaJIT FFI.
|
||||||
|
```lua
|
||||||
|
local ffi = require "ffi"
|
||||||
|
```
|
||||||
|
|
||||||
|
Then use ffi.new to make a struct, e.g `ffi.new("Color", r, g, b, a)`
|
||||||
|
|
||||||
|
#### Note concerning pointers
|
||||||
|
|
||||||
|
As LuaJIT doesn't support pointer dereferencing, you need to build a
|
||||||
|
single-element array, e.g
|
||||||
|
```lua
|
||||||
|
local image = ffi.new("Image[1]")
|
||||||
|
```
|
||||||
|
In this case, to access the element of `image`, you need to do `image[0]`.
|
||||||
|
The pointer you can pass is `image`.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
```lua
|
||||||
|
rl.SetConfigFlags(rl.FLAG_VSYNC_HINT)
|
||||||
|
rl.SetTargetFPS(60)
|
||||||
|
|
||||||
|
rl.InitWindow(800, 450, "raylib [core] example - basic window")
|
||||||
|
|
||||||
|
while not rl.WindowShouldClose() do
|
||||||
|
rl.BeginDrawing()
|
||||||
|
|
||||||
|
rl.ClearBackground(rl.RAYWHITE)
|
||||||
|
rl.DrawText("Congrats! You created your first window!", 190, 200, 20, rl.LIGHTGRAY)
|
||||||
|
|
||||||
|
rl.EndDrawing()
|
||||||
|
end
|
||||||
|
|
||||||
|
rl.CloseWindow()
|
||||||
|
```
|
||||||
|
|
||||||
### Licence
|
### Licence
|
||||||
|
|
||||||
Copyright (C) 2020 Astie Teddy
|
Copyright (C) 2020 Astie Teddy
|
||||||
|
@ -16,6 +16,8 @@
|
|||||||
|
|
||||||
local load = loadstring
|
local load = loadstring
|
||||||
|
|
||||||
|
-- TODO: Embedded ressources loading.
|
||||||
|
|
||||||
if raylua.loadfile then
|
if raylua.loadfile then
|
||||||
package.path = "?.lua"
|
package.path = "?.lua"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user