feat: defined game class
parent
dbbed72fc9
commit
fe9242c9c0
|
@ -0,0 +1,12 @@
|
||||||
|
#include "game.hpp"
|
||||||
|
|
||||||
|
void Game::process_event(SDL_Event const &evt) {
|
||||||
|
}
|
||||||
|
|
||||||
|
void Game::tick(double delta_time) {
|
||||||
|
}
|
||||||
|
|
||||||
|
void Game::draw(SDL_Renderer *render) {
|
||||||
|
SDL_SetRenderDrawColor(this->render, 0, 0, 0, 255);
|
||||||
|
SDL_RenderClear(render);
|
||||||
|
}
|
|
@ -0,0 +1,13 @@
|
||||||
|
#ifndef GAME_HPP
|
||||||
|
#define GAME_HPP
|
||||||
|
|
||||||
|
#include "core/application.hpp"
|
||||||
|
|
||||||
|
class Game : public Application {
|
||||||
|
public:
|
||||||
|
virtual void process_event(SDL_Event const &evt) override;
|
||||||
|
virtual void tick(double delta_time) override;
|
||||||
|
virtual void draw(SDL_Renderer *render) override;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // !GAME_HPP
|
34
src/main.cpp
34
src/main.cpp
|
@ -1,34 +1,6 @@
|
||||||
#include <SDL2/SDL.h>
|
#include "game.hpp"
|
||||||
#include <SDL2/SDL_quit.h>
|
|
||||||
#include <SDL2/SDL_video.h>
|
|
||||||
#include <SDL2/SDL_events.h>
|
|
||||||
#include <assert.h>
|
|
||||||
|
|
||||||
int main(int argc, char* argv[]) {
|
int main(int argc, char* argv[]) {
|
||||||
// initialize SDL2
|
Game game{};
|
||||||
assert(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_EVENTS) == 0 && "SDL Initialization failed");
|
game.run();
|
||||||
// open window and create renderer from window
|
|
||||||
SDL_Window *window{SDL_CreateWindow("new_window", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 1000, 1000, SDL_WINDOW_BORDERLESS)};
|
|
||||||
assert(window != NULL && "SDL window failed to open");
|
|
||||||
SDL_Renderer *render{SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED)};
|
|
||||||
assert(render != NULL && "SDL Renderer failed to open");
|
|
||||||
// start working
|
|
||||||
SDL_Event event{};
|
|
||||||
bool keep_open{true};
|
|
||||||
while(keep_open) {
|
|
||||||
SDL_PollEvent(&event);
|
|
||||||
switch(event.type) {
|
|
||||||
case SDL_QUIT:
|
|
||||||
keep_open = false;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
SDL_RenderClear(render);
|
|
||||||
SDL_RenderPresent(render);
|
|
||||||
}
|
|
||||||
|
|
||||||
SDL_DestroyRenderer(render);
|
|
||||||
SDL_DestroyWindow(window);
|
|
||||||
SDL_Quit();
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue