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. There currently is not one for Linux or Mac OS because it has not been tested on those platforms at the moment.
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
