See crates.io.
This crate exposes the raw Horde3D API, so the Horde3D manual applies.
```rust extern crate glutin; extern crate horde3d_sys;
use glutin::GlContext;
fn main() { let mut eventsloop = glutin::EventsLoop::new(); let window = glutin::WindowBuilder::new() .withtitle("Dungeon") .withdimensions(1024, 768); let context = glutin::ContextBuilder::new() .withvsync(true) .withgl(glutin::GlRequest::Latest) .withglprofile(glutin::GlProfile::Core); let glwindow = 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();
}
} ```