X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fvideo%2Fdrawing_context.hpp;h=abfab22203c4e216b32640847d1565816eb3054b;hb=403276e51afda11d0738be756025411d9103a6ed;hp=28b15fc72bc04a8310f88c5b59ccd4a32ab567d0;hpb=99cf62c2d44b4555e9761f1c8f1b10cf880c33fb;p=supertux.git diff --git a/src/video/drawing_context.hpp b/src/video/drawing_context.hpp index 28b15fc72..abfab2220 100644 --- a/src/video/drawing_context.hpp +++ b/src/video/drawing_context.hpp @@ -23,27 +23,23 @@ #include #include -//#include +#include -//#include "obstack/obstack.h" -//#include "math/vector.hpp" -//#include "math/rect.hpp" +#include + +#include "glutil.hpp" +#include "obstack/obstack.h" +#include "math/vector.hpp" +#include "math/rect.hpp" #include "drawing_request.hpp" #include "font.hpp" #include "color.hpp" -#include -#include -#include - -class Vector; -class Rect; - class Surface; -/*class Texture; +class Texture; struct DrawingRequest; class Renderer; -class Lightmap;*/ +class Lightmap; /** * This class provides functions for drawing things on screen. It also @@ -82,6 +78,9 @@ public: void draw_filled_rect(const Vector& topleft, const Vector& size, const Color& color, int layer); void draw_filled_rect(const Rect& rect, const Color& color, int layer); + void draw_filled_rect(const Rect& rect, const Color& color, float radius, int layer); + + void draw_inverse_ellipse(const Vector& pos, const Vector& size, const Color& color, int layer); /// Processes all pending drawing requests and flushes the list. void do_drawing(); @@ -139,15 +138,8 @@ private: } }; - Unison::Video::Surface lightmap; - std::vector > get_light_requests; - - std::map normal_list; - std::map lightmap_list; - std::map *draw_target; - - //Renderer *renderer; - //Lightmap *lightmap; + Renderer *renderer; + Lightmap *lightmap; /// the transform stack std::vector transformstack; @@ -157,21 +149,21 @@ private: std::vector blend_stack; Blend blend_mode; - /*typedef std::vector DrawingRequests; + typedef std::vector DrawingRequests; void handle_drawing_requests(DrawingRequests& requests); DrawingRequests drawing_requests; DrawingRequests lightmap_requests; - DrawingRequests* requests;*/ + DrawingRequests* requests; Color ambient_color; Target target; std::vector target_stack; /* obstack holding the memory of the drawing requests */ - //struct obstack obst; + struct obstack obst; bool screenshot_requested; /**< true if a screenshot should be taken after the next frame has been rendered */ };