diff options
author | Andrei Karas <akaras@inbox.ru> | 2013-12-28 23:06:17 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2013-12-29 14:55:33 +0300 |
commit | c9f8bba932022ffd90031713c51861587f86b244 (patch) | |
tree | db2184f1a1ac5649792c5ac57415bfa71a2c307a /src/render/normalopenglgraphics.h | |
parent | 9bc564d99774045fa0c10f253dd54b223416bc34 (diff) | |
download | manaplus-c9f8bba932022ffd90031713c51861587f86b244.tar.gz manaplus-c9f8bba932022ffd90031713c51861587f86b244.tar.bz2 manaplus-c9f8bba932022ffd90031713c51861587f86b244.tar.xz manaplus-c9f8bba932022ffd90031713c51861587f86b244.zip |
Add cached draw methods into renderers.
Diffstat (limited to 'src/render/normalopenglgraphics.h')
-rw-r--r-- | src/render/normalopenglgraphics.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/render/normalopenglgraphics.h b/src/render/normalopenglgraphics.h index a62a97df7..73457ef0d 100644 --- a/src/render/normalopenglgraphics.h +++ b/src/render/normalopenglgraphics.h @@ -160,12 +160,16 @@ class NormalOpenGLGraphics final : public Graphics inline void drawQuadArrayfi(const int size); + inline void drawQuadArrayfiCached(const int size); + inline void drawQuadArrayfi(const GLint *const intVertArray, const GLfloat *const floatTexArray, const int size); inline void drawQuadArrayii(const int size); + inline void drawQuadArrayiiCached(const int size); + inline void drawQuadArrayii(const GLint *const intVertArray, const GLint *const intTexArray, const int size); @@ -200,6 +204,15 @@ class NormalOpenGLGraphics final : public Graphics const int width, const int height, const bool useColor) override final; + void drawImageCached(const Image *const image, + int x, int y) override final; + + void drawPatternCached(const Image *const image, + const int x, const int y, + const int w, const int h) override final; + + void completeCache() override final; + #ifdef DEBUG_DRAW_CALLS unsigned int getDrawCalls() const { return mLastDrawCalls; } @@ -229,10 +242,16 @@ class NormalOpenGLGraphics final : public Graphics GLfloat *mFloatTexArray; GLint *mIntTexArray; GLint *mIntVertArray; + GLfloat *mFloatTexArrayCached; + GLint *mIntTexArrayCached; + GLint *mIntVertArrayCached; + float mAlphaCached; + int mVpCached; bool mTexture; bool mIsByteColor; gcn::Color mByteColor; + GLuint mImageCached; float mFloatColor; int mMaxVertices; bool mColorAlpha; |