- File Changes
 - .gitignore
 - Cargo.toml
 - assets/bardo.png
 - assets/darkdimension.png
 - assets/reaper.png
 - src/main.rs
 
- assets
 - 
     src
    
- main.rs
 
 - .gitignore
 - Cargo.toml
 
+19
        -3
         
        src/main.rs
      | 1 | 1 | 
                    
                   | 
              
| 2 | 2 | 
                    
                   | 
              
| 3 | 3 | 
                    
                   | 
              
| 4 | 4 | 
                    
                   | 
              
| 5 | 
                    
                   | 
              |
| 5 | 6 | 
                    
                   | 
              
| 6 | 7 | 
                    
                   | 
              
| 7 | 8 | 
                    
                   | 
              
| 8 | 9 | 
                    
                   | 
              
| 9 | 
                    
                   | 
              |
| 10 | 
                    
                   | 
              |
| 11 | 
                    
                   | 
              |
| 12 | 
                    
                   | 
              |
| 13 | 
                    
                   | 
              |
| 14 | 
                    
                   | 
              |
| 15 | 
                    
                   | 
              |
| 16 | 
                    
                   | 
              |
| 10 | 17 | 
                    
                   | 
              
| 11 | 18 | 
                    
                   | 
              
| 12 | 19 | 
                    
                   | 
              
| 13 | 
                    
                   | 
              |
| 20 | 
                    
                   | 
              |
| 21 | 
                    
                   | 
              |
| 22 | 
                    
                   | 
              |
| 23 | 
                    
                   | 
              |
| 24 | 
                    
                   | 
              |
| 25 | 
                    
                   | 
              |
| 14 | 26 | 
                    
                   | 
              
| 15 | 27 | 
                    
                   | 
              
| 16 | 28 | 
                    
                   | 
              
| 17 | 29 | 
                    
                   | 
              
| 18 | 30 | 
                    
                   | 
              
| 19 | 31 | 
                    
                   | 
              
| 20 | 32 | 
                    
                   | 
              
| 21 | 33 | 
                    
                   | 
              
| 22 | 34 | 
                    
                   | 
              
| 23 | 35 | 
                    
                   | 
              
| 24 | 36 | 
                    
                   | 
              
| 25 | 37 | 
                    
                   | 
              
| 26 | 38 | 
                    
                   | 
              
| 27 | 39 | 
                    
                   | 
              
| 28 | 40 | 
                    
                   | 
              
| 29 | 41 | 
                    
                   | 
              
| 30 | 42 | 
                    
                   | 
              
| 31 | 43 | 
                    
                   | 
              
| 32 | 44 | 
                    
                   | 
              
| 33 | 45 | 
                    
                   | 
              
| 34 | 46 | 
                    
                   | 
              
| 35 | 47 | 
                    
                   | 
              
| 36 | 48 | 
                    
                   | 
              
| 37 | 49 | 
                    
                   | 
              
| 38 | 50 | 
                    
                   | 
              
| 51 | 
                    
                   | 
              |
| 52 | 
                    
                   | 
              |
| 53 | 
                    
                   | 
              |
| 54 | 
                    
                   | 
              |
| 39 | 55 | 
                    
                   | 
              
| 40 | 56 | 
                    
                   | 
              
| 41 | 57 | 
                    
                   | 
              
| 42 | 58 | 
                    
                   | 
              
| 43 | 59 | 
                    
                   | 
              
| 44 | 60 | 
                    
                   | 
              
| 45 | 61 | 
                    
                   | 
              
| 46 | 62 | 
                    
                   | 
              
| 47 | 63 | 
                    
                   | 
              
| 48 | 64 | 
                    
                   | 
              
| 49 | 65 | 
                    
                   | 
              
| 50 | 66 | 
                    
                   | 
              
| 51 | 67 | 
                    
                   | 
              
| 52 | 68 | 
                    
                   | 
              
| 53 | 69 | 
                    
                   | 
              
| 54 | 70 | 
                    
                   | 
              
| 55 | 71 | 
                    
                   | 
              
| 56 | 72 | 
                    
                   | 
              
| 57 | 
                    
                   | 
              |
| 73 | 
                    
                   | 
              |
| 58 | 74 | 
                    
                   | 
              
| 59 | 75 | 
                    
                   | 
              
| 60 | 76 | 
                    
                   | 
              
| 61 | 77 | 
                    
                   | 
              
| 62 | 78 | 
                    
                   | 
              
| 63 | 79 | 
                    
                   | 
              
| 64 | 80 | 
                    
                   | 
              
+19
        -3
         
        src/main.rs
      | 1 | 
      
     | 
    1 | 
      
     | 
              
| 2 | 
      
     | 
    2 | 
      
     | 
              
| 3 | 
      
     | 
    3 | 
      
     | 
              
| 4 | 
      
     | 
    4 | 
      
     | 
              
| 5 | 
      
     | 
              ||
| 5 | 
      
     | 
    6 | 
      
     | 
              
| 6 | 
      
     | 
    7 | 
      
     | 
              
| 7 | 
      
     | 
    8 | 
      
     | 
              
| 8 | 
      
     | 
    9 | 
      
     | 
              
| 9 | 
      
     | 
    10 | 
      
     | 
              
| 11 | 
      
     | 
              ||
| 12 | 
      
     | 
              ||
| 13 | 
      
     | 
              ||
| 14 | 
      
     | 
              ||
| 15 | 
      
     | 
              ||
| 16 | 
      
     | 
              ||
| 10 | 
      
     | 
    17 | 
      
     | 
              
| 11 | 
      
     | 
    18 | 
      
     | 
              
| 12 | 
      
     | 
    19 | 
      
     | 
              
| 13 | 
      
     | 
    20 | 
      
     | 
              
| 21 | 
      
     | 
              ||
| 22 | 
      
     | 
              ||
| 23 | 
      
     | 
              ||
| 24 | 
      
     | 
              ||
| 25 | 
      
     | 
              ||
| 14 | 
      
     | 
    26 | 
      
     | 
              
| 15 | 
      
     | 
    27 | 
      
     | 
              
| 16 | 
      
     | 
    28 | 
      
     | 
              
| 17 | 
      
     | 
    29 | 
      
     | 
              
| 18 | 
      
     | 
    30 | 
      
     | 
              
| 19 | 
      
     | 
    31 | 
      
     | 
              
| 20 | 
      
     | 
    32 | 
      
     | 
              
| 21 | 
      
     | 
    33 | 
      
     | 
              
| 22 | 
      
     | 
    34 | 
      
     | 
              
| 23 | 
      
     | 
    35 | 
      
     | 
              
| 24 | 
      
     | 
    36 | 
      
     | 
              
| 25 | 
      
     | 
    37 | 
      
     | 
              
| 26 | 
      
     | 
    38 | 
      
     | 
              
| 27 | 
      
     | 
    39 | 
      
     | 
              
| 28 | 
      
     | 
    40 | 
      
     | 
              
| 29 | 
      
     | 
    41 | 
      
     | 
              
| 30 | 
      
     | 
    42 | 
      
     | 
              
| 31 | 
      
     | 
    43 | 
      
     | 
              
| 32 | 
      
     | 
    44 | 
      
     | 
              
| 33 | 
      
     | 
    45 | 
      
     | 
              
| 34 | 
      
     | 
    46 | 
      
     | 
              
| 35 | 
      
     | 
    47 | 
      
     | 
              
| 36 | 
      
     | 
    48 | 
      
     | 
              
| 37 | 
      
     | 
    49 | 
      
     | 
              
| 38 | 
      
     | 
    50 | 
      
     | 
              
| 51 | 
      
     | 
              ||
| 52 | 
      
     | 
              ||
| 53 | 
      
     | 
              ||
| 54 | 
      
     | 
              ||
| 39 | 
      
     | 
    55 | 
      
     | 
              
| 40 | 
      
     | 
    56 | 
      
     | 
              
| 41 | 
      
     | 
    57 | 
      
     | 
              
| 42 | 
      
     | 
    58 | 
      
     | 
              
| 43 | 
      
     | 
    59 | 
      
     | 
              
| 44 | 
      
     | 
    60 | 
      
     | 
              
| 45 | 
      
     | 
    61 | 
      
     | 
              
| 46 | 
      
     | 
    62 | 
      
     | 
              
| 47 | 
      
     | 
    63 | 
      
     | 
              
| 48 | 
      
     | 
    64 | 
      
     | 
              
| 49 | 
      
     | 
    65 | 
      
     | 
              
| 50 | 
      
     | 
    66 | 
      
     | 
              
| 51 | 
      
     | 
    67 | 
      
     | 
              
| 52 | 
      
     | 
    68 | 
      
     | 
              
| 53 | 
      
     | 
    69 | 
      
     | 
              
| 54 | 
      
     | 
    70 | 
      
     | 
              
| 55 | 
      
     | 
    71 | 
      
     | 
              
| 56 | 
      
     | 
    72 | 
      
     | 
              
| 57 | 
      
     | 
    73 | 
      
     | 
              
| 58 | 
      
     | 
    74 | 
      
     | 
              
| 59 | 
      
     | 
    75 | 
      
     | 
              
| 60 | 
      
     | 
    76 | 
      
     | 
              
| 61 | 
      
     | 
    77 | 
      
     | 
              
| 62 | 
      
     | 
    78 | 
      
     | 
              
| 63 | 
      
     | 
    79 | 
      
     | 
              
| 64 | 
      
     | 
    80 | 
      
     | 
              
/target**/*.rs.bk
[package]name = "game-tutorial"version = "0.1.0"authors = ["Sunjay Varma <[email protected]>"]edition = "2018"[dependencies][dependencies.sdl2]version = "0.32.1"default-features = falsefeatures = ["image"]
use sdl2::pixels::Color;use sdl2::event::Event;use sdl2::keyboard::Keycode;use sdl2::render::{WindowCanvas, Texture};use sdl2::rect::{Point, Rect};// "self" imports the "image" module itself as well as everything else we listeduse sdl2::image::{self, LoadTexture, InitFlag};use std::time::Duration;fn render(canvas: &mut WindowCanvas,color: Color,texture: &Texture,position: Point,sprite: Rect,) -> Result<(), String> {canvas.set_draw_color(color);canvas.clear();let (width, height) = canvas.output_size()?;// Treat the center of the screen as the (0, 0) coordinatelet screen_position = position + Point::new(width as i32 / 2, height as i32 / 2);let screen_rect = Rect::from_center(screen_position, sprite.width(), sprite.height());canvas.copy(texture, sprite, screen_rect)?;canvas.present();Ok(())}fn main() -> Result<(), String> {let sdl_context = sdl2::init()?;let video_subsystem = sdl_context.video()?;// Leading "_" tells Rust that this is an unused variable that we don't care about. It has to// stay unused because if we don't have any variable at all then Rust will treat it as a// temporary value and drop it right away!let _image_context = image::init(InitFlag::PNG | InitFlag::JPG)?;let window = video_subsystem.window("game tutorial", 800, 600).position_centered().build().expect("could not initialize video subsystem");let mut canvas = window.into_canvas().build().expect("could not make a canvas");let texture_creator = canvas.texture_creator();let texture = texture_creator.load_texture("assets/bardo.png")?;let position = Point::new(0, 0);// src position in the spritesheetlet sprite = Rect::new(0, 0, 26, 36);let mut event_pump = sdl_context.event_pump()?;let mut i = 0;'running: loop {// Handle eventsfor event in event_pump.poll_iter() {match event {Event::Quit {..} |Event::KeyDown { keycode: Some(Keycode::Escape), .. } => {break 'running;},_ => {}}}// Updatei = (i + 1) % 255;// Renderrender(&mut canvas, Color::RGB(i, 64, 255 - i), &texture, position, sprite)?;// Time management!::std::thread::sleep(Duration::new(0, 1_000_000_000u32 / 60));}Ok(())}