From acebd488aab0b3e359125a3cd0dcfc729aaecd9e Mon Sep 17 00:00:00 2001 From: Dmitry Marakasov Date: Wed, 18 Dec 2013 04:35:49 +0400 Subject: [PATCH] Add a way to reset render target to default (e.g. screen) --- SDL2pp/Renderer.cc | 5 +++++ SDL2pp/Renderer.hh | 1 + 2 files changed, 6 insertions(+) diff --git a/SDL2pp/Renderer.cc b/SDL2pp/Renderer.cc index 6e5b554..969b6e2 100644 --- a/SDL2pp/Renderer.cc +++ b/SDL2pp/Renderer.cc @@ -74,6 +74,11 @@ void Renderer::SetDrawColor(Uint8 r, Uint8 g, Uint8 b, Uint8 a) { throw Exception("SDL_SetRenderDrawColor failed"); } +void Renderer::SetTarget() { + if (SDL_SetRenderTarget(renderer_, nullptr) != 0) + throw Exception("SDL_SetRenderTarget failed"); +} + void Renderer::SetTarget(Texture& texture) { if (SDL_SetRenderTarget(renderer_, texture.Get()) != 0) throw Exception("SDL_SetRenderTarget failed"); diff --git a/SDL2pp/Renderer.hh b/SDL2pp/Renderer.hh index 7d7c37e..5801638 100644 --- a/SDL2pp/Renderer.hh +++ b/SDL2pp/Renderer.hh @@ -56,6 +56,7 @@ public: void Copy(Texture& texture, const Rect& srcrect, const Rect& dstrect, double angle, const Point& center, SDL_RendererFlip flip); void SetDrawColor(Uint8 r, Uint8 g, Uint8 b, Uint8 a = 255); + void SetTarget(); void SetTarget(Texture& texture); void SetDrawBlendMode(SDL_BlendMode blendMode);