Bindings for Vala to use the simple and easy to use graphics library Raylib.
Ralib VAPI currently supports the core module of Raylib using a C style API for ease of code porting.
Some VAPI's will be released to follow a more OOP design as well if you wish to use them in a more traditional Vala style.
Module | Supported | OOP Available | VAPI Name | Version |
---|---|---|---|---|
raylib | ✔️ | 🚧 | raylib.vapi | 5.0 |
rlgl | ✔️ | ❌ | rlgl.vapi | 4.5 |
raymath | ❌ | ❌ | ||
raudio | ❌ | ❌ | ||
raygui | ❌ | ❌ | ||
rpng | ❌ | ❌ | ||
rini | ✔️ | ❌ | rini.vapi | 1.0 |
rres | ❌ | ❌ |
using Raylib;
public const int WINDOW_WIDTH = 800;
public const int WINDOW_HEIGHT = 450;
public static int main (string[] args) {
init_window (WINDOW_WIDTH, WINDOW_HEIGHT, "raylib [core] example - basic window");
set_target_fps (60);
while (!window_should_close ()) {
begin_drawing ();
clear_background (RAYWHITE);
draw_text ("Congrats! You created your first window!", 190, 200, 20, LIGHTGRAY);
end_drawing ();
}
close_window ();
return 0;
}
cd examples
meson build -C build
cd build/
Camera3D/application # To run the 3D camera example
# or
SmoothPixel/application # To run the smooth pixel perfect example