Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.15 KB | None | 0 0
  1. extern crate sdl2;
  2.  
  3. use sdl2::event::Event;
  4. use sdl2::keyboard::Keycode;
  5. use sdl2::pixels::Color;
  6. use std::time::Duration;
  7.  
  8. pub fn main() {
  9. let sdl_context = sdl2::init().unwrap();
  10. let video_subsystem = sdl_context.video().unwrap();
  11.  
  12. let window = video_subsystem
  13. .window("rust-sdl2 demo", 800, 600)
  14. .build()
  15. .unwrap();
  16.  
  17. let mut canvas = window.into_canvas().build().unwrap();
  18.  
  19. canvas.set_draw_color(Color::RGB(0, 255, 255));
  20. canvas.clear();
  21. canvas.present();
  22. let mut event_pump = sdl_context.event_pump().unwrap();
  23. let mut i = 0;
  24. 'running: loop {
  25. i = (i + 1) % 255;
  26. canvas.set_draw_color(Color::RGB(i, 64, 255 - i));
  27. canvas.clear();
  28. for event in event_pump.poll_iter() {
  29. match event {
  30. Event::Quit { .. }
  31. | Event::KeyDown {
  32. keycode: Some(Keycode::Escape),
  33. ..
  34. } => break 'running,
  35. _ => {}
  36. }
  37. }
  38. // The rest of the game loop goes here...
  39.  
  40. canvas.present();
  41. ::std::thread::sleep(Duration::new(0, 1_000_000_000u32 / 60));
  42. }
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement