Enhance Renderer class with Clear and Present methods for improved rendering control; remove unnecessary comments and streamline SDL_Surface and SDL_Texture deleters by eliminating memory tracking logic. Additionally, remove unused TexturePool class to simplify the codebase.
This commit is contained in:
@@ -42,16 +42,10 @@ class Renderer {
|
||||
|
||||
auto renderer() -> SDL_Renderer * { return renderer_.get(); }
|
||||
|
||||
/**
|
||||
* @brief Used to render a bitmap to the screen.
|
||||
*/
|
||||
void RenderBitmap(gfx::Bitmap *bitmap) {
|
||||
bitmap->CreateTexture(renderer_.get());
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Used to update a bitmap on the screen.
|
||||
*/
|
||||
void UpdateBitmap(gfx::Bitmap *bitmap) {
|
||||
bitmap->UpdateTexture(renderer_.get());
|
||||
}
|
||||
@@ -64,6 +58,13 @@ class Renderer {
|
||||
RenderBitmap(&bitmap);
|
||||
}
|
||||
|
||||
void Clear() {
|
||||
SDL_SetRenderDrawColor(renderer_.get(), 0x00, 0x00, 0x00, 0x00);
|
||||
SDL_RenderClear(renderer_.get());
|
||||
}
|
||||
|
||||
void Present() { SDL_RenderPresent(renderer_.get()); }
|
||||
|
||||
private:
|
||||
Renderer() = default;
|
||||
|
||||
|
||||
@@ -3,8 +3,6 @@
|
||||
|
||||
#include <SDL.h>
|
||||
|
||||
#include "app/core/platform/memory_tracker.h"
|
||||
|
||||
namespace yaze {
|
||||
namespace core {
|
||||
|
||||
@@ -19,8 +17,7 @@ struct SDL_Deleter {
|
||||
// Custom deleter for SDL_Surface
|
||||
struct SDL_Surface_Deleter {
|
||||
void operator()(SDL_Surface* p) const {
|
||||
if (p && !MemoryTracker::GetInstance().IsFreed(p)) {
|
||||
MemoryTracker::GetInstance().TrackDeallocation(p);
|
||||
if (p) {
|
||||
SDL_FreeSurface(p);
|
||||
}
|
||||
}
|
||||
@@ -29,8 +26,7 @@ struct SDL_Surface_Deleter {
|
||||
// Custom deleter for SDL_Texture
|
||||
struct SDL_Texture_Deleter {
|
||||
void operator()(SDL_Texture* p) const {
|
||||
if (p && !MemoryTracker::GetInstance().IsFreed(p)) {
|
||||
MemoryTracker::GetInstance().TrackDeallocation(p);
|
||||
if (p) {
|
||||
SDL_DestroyTexture(p);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user