[][src]Crate raylib

raylib-rs

raylib is a safe Rust binding to Raylib, a C library for enjoying games programming.

To get started, take a look at the init_window function. This initializes Raylib and shows a window, and returns a RaylibHandle. This handle is very important, because it is the way in which one accesses the vast majority of Raylib's functionality. This means that it must not go out of scope until the game is ready to exit. You will also recieve a !Send or !Sync RaylibThread required for thread local functions.

For more control over the game window, the init function will return a RaylibBuilder which allows for tweaking various settings such as VSync, anti-aliasing, fullscreen, and so on. Calling RaylibBuilder::build will then provide a RaylibHandle.

Some useful constants can be found in the consts module, which is also re-exported in the prelude module. In most cases you will probably want to use raylib::prelude::*; to make your experience more smooth.

Examples

The classic "Hello, world":

use raylib::prelude::*;

fn main() {
     
}

Re-exports

pub use crate::core::collision::*;
pub use crate::core::file::*;
pub use crate::core::logging::*;
pub use crate::core::misc::get_random_value;
pub use crate::core::misc::open_url;
pub use crate::core::*;

Modules

consts

Various constant enums to use with raylib

core
ease

Easing and interpolation helpers.

ffi

The raw, unsafe FFI binding, in case you need that escape hatch or the safe layer doesn't provide something you need.

prelude

The raylib-rs prelude.

rgui