Raylib bindings for Jule v0.2.0
Warning
This is still a WIP and has only been tested on Windows so far, so please be aware. If you’re on a different OS and want to help, contributions are welcome.
First make sure you have the latest version of Jule installed. 0.2.0 is the latest at the time of writing.
Then create a new folder and create a Jule module via julec mod init <module name>
Once you have that clone this repository
git clone https://github.com/SabeDoesThings/rayjule
and copy the windows.jule file into your main directory.
This is has all the compiler flags needed to run on Windows.
This applies to linux as well and all that is different is that you use the linux.jule instead
Once you have that create a main.jule file and put this code:
use rl "<module name>/rayjule"
fn main() {
const screenWidth = 800
const screenHeight = 450
rl::InitWindow(screenWidth, screenHeight, "raylib [core] example - basic window")
rl::SetTargetFPS(60)
for !rl::WindowShouldClose() {
rl::BeginDrawing()
rl::ClearBackground(rl::RAYWHITE)
rl::DrawText("Congrats! You created your first window!", 190, 200, 20, rl::LIGHTGRAY)
rl::EndDrawing()
}
rl::CloseWindow()
}Then just do julec build . and it should run.
You can find more examples in the examples folder.
Examples Todo:
- textures_sprite_animation
- textures_background_scrolling
- core_2d_camera
- core_2d_camera_platformer
- core_3d_camera_first_person
- core_3d_camera_fps
- models_first_person_maze
- audio_music_stream
- games_floppy
