souleng
Game engine providing full Python scripting support
Loading...
Searching...
No Matches
Renderer.hpp
1#pragma once
2#include <SDL3/SDL.h>
3
7struct Renderer {
11 static Renderer *initialize(SDL_Window *window);
12
14 static Renderer *instance();
15
16 ~Renderer();
17
20 void SetRenderDrawColor(Uint8 r, Uint8 b, Uint8 g, Uint8 a);
21
23 void RenderClear();
24
26 void RenderPresent();
27
30 SDL_Texture *CreateTextureFromSurface(SDL_Surface *pixels);
31
36 void RenderTexture(SDL_Texture *tex, SDL_FRect *srcRect,
37 SDL_FRect *targetRect);
38
41 void RenderRect(SDL_FRect *rect);
42
43private:
44 Renderer(SDL_Renderer *renderer);
45
46 static Renderer *mInstance;
47 SDL_Renderer *mRenderer;
48};
Definition Renderer.hpp:7
void RenderClear()
Clears the entire render target.
Definition Renderer.cpp:33
void RenderTexture(SDL_Texture *tex, SDL_FRect *srcRect, SDL_FRect *targetRect)
Definition Renderer.cpp:41
static Renderer * initialize(SDL_Window *window)
Definition Renderer.cpp:7
void RenderPresent()
Updates the window with any rendered textures.
Definition Renderer.cpp:35
void RenderRect(SDL_FRect *rect)
Definition Renderer.cpp:46
SDL_Texture * CreateTextureFromSurface(SDL_Surface *pixels)
Definition Renderer.cpp:37
static Renderer * instance()
Singleton accessor function for the Renderer.
Definition Renderer.cpp:17
void SetRenderDrawColor(Uint8 r, Uint8 b, Uint8 g, Uint8 a)
Definition Renderer.cpp:29