summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2011-04-22 23:16:10 +0300
committerAndrei Karas <akaras@inbox.ru>2011-04-22 23:16:10 +0300
commitf5536169ce6143ae39bcfd8b353e6495dac76a72 (patch)
tree650a42f303452291e4201728b5b33c1f4fb3339d
parentfbcbf7e3f54443477aa6098bd41f825167dd1e76 (diff)
downloadmanaverse-f5536169ce6143ae39bcfd8b353e6495dac76a72.tar.gz
manaverse-f5536169ce6143ae39bcfd8b353e6495dac76a72.tar.bz2
manaverse-f5536169ce6143ae39bcfd8b353e6495dac76a72.tar.xz
manaverse-f5536169ce6143ae39bcfd8b353e6495dac76a72.zip
Small optimisation in opengl gui drawing.
-rw-r--r--src/graphicsvertexes.h16
-rw-r--r--src/openglgraphics.cpp24
2 files changed, 20 insertions, 20 deletions
diff --git a/src/graphicsvertexes.h b/src/graphicsvertexes.h
index 2ab54197d..d3905ba56 100644
--- a/src/graphicsvertexes.h
+++ b/src/graphicsvertexes.h
@@ -73,19 +73,19 @@ class OpenGLGraphicsVertexes
GLint *switchIntTexArray();
- std::vector<GLfloat*> &getFloatTexPool()
- { return mFloatTexPool; }
+ std::vector<GLfloat*> *getFloatTexPool()
+ { return &mFloatTexPool; }
- std::vector<GLint*> &getIntVertPool()
- { return mIntVertPool; }
+ std::vector<GLint*> *getIntVertPool()
+ { return &mIntVertPool; }
- std::vector<GLint*> &getIntTexPool()
- { return mIntTexPool; }
+ std::vector<GLint*> *getIntTexPool()
+ { return &mIntTexPool; }
void switchVp(int n);
- std::vector<int> &getVp()
- { return mVp; }
+ std::vector<int> *getVp()
+ { return &mVp; }
void init();
diff --git a/src/openglgraphics.cpp b/src/openglgraphics.cpp
index f65553a15..0cfda2445 100644
--- a/src/openglgraphics.cpp
+++ b/src/openglgraphics.cpp
@@ -628,21 +628,21 @@ void OpenGLGraphics::drawImagePattern2(GraphicsVertexes *vert, Image *image)
bindTexture(Image::mTextureType, image->mGLImage);
setTexturingAndBlending(true);
- std::vector<GLint*> &intVertPool = ogl->getIntVertPool();
+ std::vector<GLint*> *intVertPool = ogl->getIntVertPool();
std::vector<GLint*>::iterator iv;
- std::vector<int> &vp = ogl->getVp();
+ std::vector<int> *vp = ogl->getVp();
std::vector<int>::iterator ivp;
// Draw a set of textured rectangles
if (image->mTextureType == GL_TEXTURE_2D)
{
- std::vector<GLfloat*> &floatTexPool = ogl->getFloatTexPool();
+ std::vector<GLfloat*> *floatTexPool = ogl->getFloatTexPool();
std::vector<GLfloat*>::iterator ft;
- for (iv = intVertPool.begin(), ft = floatTexPool.begin(),
- ivp = vp.begin();
- iv != intVertPool.end(), ft != floatTexPool.end(),
- ivp != vp.end();
+ for (iv = intVertPool->begin(), ft = floatTexPool->begin(),
+ ivp = vp->begin();
+ iv != intVertPool->end(), ft != floatTexPool->end(),
+ ivp != vp->end();
++ iv, ++ ft, ++ ivp)
{
drawQuadArrayfi(*iv, *ft, *ivp);
@@ -650,13 +650,13 @@ void OpenGLGraphics::drawImagePattern2(GraphicsVertexes *vert, Image *image)
}
else
{
- std::vector<GLint*> &intTexPool = ogl->getIntTexPool();
+ std::vector<GLint*> *intTexPool = ogl->getIntTexPool();
std::vector<GLint*>::iterator it;
- for (iv = intVertPool.begin(), it = intTexPool.begin(),
- ivp = vp.begin();
- iv != intVertPool.end(), it != intTexPool.end(),
- ivp != vp.end();
+ for (iv = intVertPool->begin(), it = intTexPool->begin(),
+ ivp = vp->begin();
+ iv != intVertPool->end(), it != intTexPool->end(),
+ ivp != vp->end();
++ iv, ++ it, ++ ivp)
{
drawQuadArrayii(*iv, *it, *ivp);