4 //use std::ffi::CString;
7 static _WIN_W : u32 = 800;
8 static _WIN_H : u32 = 600;
11 let _sdl = sdl2::init().unwrap();
12 let _video = _sdl.video().unwrap();
14 .window("foobar", _WIN_W, _WIN_H)
15 .opengl() // add opengl flag
20 let _gl_ctx = _win.gl_create_context().unwrap();
21 let _gl = gl::load_with(|s| _video.gl_get_proc_address(s) as
22 *const std::os::raw::c_void);
24 // let _vsdr = draw::Shader::load_vs_code(&CString::new(include_str!("data/quad.v.glsl").unwrap.unrap();
25 // let _fsdr = draw::Shader::load_fs_code(&CString::new(include_str!("data/quad.f.glsl").unwrap.unrap();
26 // let sdr_prog = draw::Program::from_shaders(&[vsdr, fsdr]).unwrap();
29 gl::ClearColor(0.3, 0.1, 0.1, 1.0);
32 let mut event_pump = _sdl.event_pump().unwrap();
34 for _event in event_pump.poll_iter() {
35 // handle user input here
37 sdl2::event::Event::Quit {..} |
38 sdl2::event::Event::KeyDown {keycode:
39 Some(sdl2::keyboard::Keycode::Escape), ..} =>
46 gl::Clear(gl::COLOR_BUFFER_BIT);
47 gl::Viewport(0, 0, _WIN_W as i32, _WIN_H as i32);
50 _win.gl_swap_window();