summaryrefslogtreecommitdiff
path: root/src/render/mobileopenglgraphics.h
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2013-12-28 23:06:17 +0300
committerAndrei Karas <akaras@inbox.ru>2013-12-29 14:55:33 +0300
commitc9f8bba932022ffd90031713c51861587f86b244 (patch)
treedb2184f1a1ac5649792c5ac57415bfa71a2c307a /src/render/mobileopenglgraphics.h
parent9bc564d99774045fa0c10f253dd54b223416bc34 (diff)
downloadmanaverse-c9f8bba932022ffd90031713c51861587f86b244.tar.gz
manaverse-c9f8bba932022ffd90031713c51861587f86b244.tar.bz2
manaverse-c9f8bba932022ffd90031713c51861587f86b244.tar.xz
manaverse-c9f8bba932022ffd90031713c51861587f86b244.zip
Add cached draw methods into renderers.
Diffstat (limited to 'src/render/mobileopenglgraphics.h')
-rw-r--r--src/render/mobileopenglgraphics.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/render/mobileopenglgraphics.h b/src/render/mobileopenglgraphics.h
index 8a2469267..dbee649d0 100644
--- a/src/render/mobileopenglgraphics.h
+++ b/src/render/mobileopenglgraphics.h
@@ -165,6 +165,8 @@ class MobileOpenGLGraphics final : public Graphics
inline void drawTriangleArrayfs(const int size);
+ inline void drawTriangleArrayfsCached(const int size);
+
inline void drawLineArrays(const int size);
inline void drawVertexes(const NormalOpenGLGraphicsVertexes &ogl);
@@ -193,6 +195,15 @@ class MobileOpenGLGraphics 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; }
@@ -220,10 +231,15 @@ class MobileOpenGLGraphics final : public Graphics
GLint *mIntTexArray;
GLint *mIntVertArray;
GLshort *mShortVertArray;
+ GLfloat *mFloatTexArrayCached;
+ GLshort *mShortVertArrayCached;
+ float mAlphaCached;
+ int mVpCached;
bool mTexture;
bool mIsByteColor;
gcn::Color mByteColor;
+ GLuint mImageCached;
float mFloatColor;
int mMaxVertices;
bool mColorAlpha;