mirror of
https://github.com/thunderbrewhq/thunderbrew
synced 2026-02-05 01:29:07 +00:00
feat(gx): add uncompleted CGxDeviceGLSDL targeting Windows and Linux
This commit is contained in:
parent
827c86b194
commit
b3b75a716c
42 changed files with 7681 additions and 5 deletions
44
src/gx/glsdl/GLSDLWindow.hpp
Normal file
44
src/gx/glsdl/GLSDLWindow.hpp
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
#ifndef GX_GL_SDL_GL_SDL_WINDOW_HPP
|
||||
#define GX_GL_SDL_GL_SDL_WINDOW_HPP
|
||||
|
||||
#include <cstdint>
|
||||
#include <SDL3/SDL.h>
|
||||
|
||||
#include "gx/glsdl/GLTypes.hpp"
|
||||
|
||||
class GLSDLWindowRect {
|
||||
public:
|
||||
struct Point {
|
||||
int32_t x = 0;
|
||||
int32_t y = 0;
|
||||
};
|
||||
|
||||
struct Size {
|
||||
int32_t width = 0;
|
||||
int32_t height = 0;
|
||||
};
|
||||
|
||||
Point origin;
|
||||
Size size;
|
||||
};
|
||||
|
||||
class GLSDLWindow {
|
||||
public:
|
||||
SDL_Window* m_sdlWindow = nullptr;
|
||||
|
||||
// Create an SDL window with the requested OpenGL attributes
|
||||
void Create(const char* title, const GLSDLWindowRect& rect, GLTextureFormat depthFormat, uint32_t sampleCount);
|
||||
void Destroy();
|
||||
void Swap();
|
||||
void Resize(const GLSDLWindowRect& rect);
|
||||
|
||||
GLSDLWindowRect GetRect();
|
||||
GLSDLWindowRect GetBackingRect();
|
||||
|
||||
int32_t GetWidth();
|
||||
int32_t GetHeight();
|
||||
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue