2 releases
Uses old Rust 2015
0.1.1 | Nov 28, 2017 |
---|---|
0.1.0 | Nov 21, 2017 |
#54 in Rendering engine
7MB
47K
SLoC
Low-level Horde3D bindings for Rust
See crates.io.
This crate exposes the raw Horde3D API, so the Horde3D manual applies.
Requirements
- build-essentials (gcc, etc.)
Example
extern crate glutin;
extern crate horde3d_sys;
use glutin::GlContext;
fn main() {
let mut events_loop = glutin::EventsLoop::new();
let window = glutin::WindowBuilder::new()
.with_title("Dungeon")
.with_dimensions(1024, 768);
let context = glutin::ContextBuilder::new()
.with_vsync(true)
.with_gl(glutin::GlRequest::Latest)
.with_gl_profile(glutin::GlProfile::Core);
let gl_window = glutin::GlWindow::new(window, context, &events_loop).unwrap();
unsafe {
gl_window.context().make_current().unwrap();
eprintln!("{:?}", horde3d_sys::h3dInit(horde3d_sys::H3DRenderDevice::OpenGL4));
}
let mut running = true;
while running {
events_loop.poll_events(|event| {
match event {
glutin::Event::WindowEvent{ event, .. } => match event {
glutin::WindowEvent::Closed => running = false,
glutin::WindowEvent::Resized(w, h) => gl_window.resize(w, h),
_ => ()
},
_ => ()
}
});
gl_window.swap_buffers().unwrap();
}
unsafe {
horde3d_sys::h3dRelease();
}
}