GLM works only for C++ and I plan on moving to back to C. There is a C port, but it would be good for me to figure out vertex math myself. Hence, my own library has been created.
33 lines
752 B
C++
33 lines
752 B
C++
#ifndef RSE_GRAPHICS_HPP
|
|
#define RSE_GRAPHICS_HPP
|
|
|
|
#include <cstdint>
|
|
|
|
struct VulkanState;
|
|
namespace rse::graphics
|
|
{
|
|
class RseGraphics {
|
|
public:
|
|
RseGraphics();
|
|
~RseGraphics();
|
|
RseGraphics& operator=(const RseGraphics&) = delete;
|
|
RseGraphics(const RseGraphics&) = delete;
|
|
|
|
/**
|
|
* @brief Initialize graphics module, runs main loop and deinits everything, when interrupted.
|
|
* This has to been run AFTER all scene objects have been already created.
|
|
*
|
|
* @return uint8_t 0 on success.
|
|
*/
|
|
uint8_t graphics_run(void);
|
|
|
|
private:
|
|
/* Hold vulkan state. It is modified by function initializing and communicating with Vulkan API */
|
|
VulkanState* vulkan_state;
|
|
};
|
|
|
|
|
|
} // namespace rse::graphics
|
|
|
|
|
|
#endif |