vktutorial/first_app.hpp

38 lines
745 B
C++

#pragma once
#include "hk_device.hpp"
#include "hk_game_object.hpp"
#include "hk_window.hpp"
#include "hk_renderer.hpp"
// std
#include <memory>
#include <vector>
namespace hk
{
class FirstApp
{
public:
static constexpr int WIDTH = 800;
static constexpr int HEIGHT = 600;
FirstApp();
~FirstApp();
FirstApp(const FirstApp &) = delete;
FirstApp &operator=(const FirstApp &) = delete;
void run();
void runGravitySystem();
private:
void loadGameObjects();
Window m_window{WIDTH, HEIGHT, "Hello Vulkan!"};
Device m_device{m_window};
Renderer m_renderer{m_window, m_device};
std::vector<GameObject> m_gameObjects;
};
}