Parcourir la source

Lesson 3.3 - Adding missing changes

Godzil il y a 3 ans
Parent
commit
d08ab64c0e
2 fichiers modifiés avec 16 ajouts et 3 suppressions
  1. 11 2
      source/Game.cpp
  2. 5 1
      source/include/Game.h

+ 11 - 2
source/Game.cpp

@@ -31,7 +31,7 @@ void Game::Initialize(void)
         return;
     }
 
-    SDL_Window *window = SDL_CreateWindow(NULL, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
+    this->window = SDL_CreateWindow(NULL, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
                                           800, 600, SDL_WINDOW_BORDERLESS);
     if (!window)
     {
@@ -39,7 +39,7 @@ void Game::Initialize(void)
         return;
     }
 
-    SDL_Renderer *renderer = SDL_CreateRenderer(window, -1, 0);
+    this->renderer = SDL_CreateRenderer(window, -1, 0);
     if (!renderer)
     {
         fprintf(stderr, "SDL renderer creation error.\n");
@@ -59,7 +59,16 @@ void Game::Run(void)
 }
 void Game::Destroy(void)
 {
+    if (this->renderer)
+    {
+        SDL_DestroyRenderer(this->renderer);
+    }
+    if (this->window)
+    {
+        SDL_DestroyWindow(this->window);
+    }
 
+    SDL_Quit();
 }
 
 void Game::ProcessInput(void)

+ 5 - 1
source/include/Game.h

@@ -9,9 +9,13 @@
 #ifndef GAMEENGINE_GAME_H
 #define GAMEENGINE_GAME_H
 
+#include <SDL.h>
+
 class Game
 {
-private: /* Nothing YET */
+private:
+    SDL_Window *window;
+    SDL_Renderer *renderer;
 
 public:
     Game();