From cf5ad5970aa5c25ec413b95932171f4e5a2412c5 Mon Sep 17 00:00:00 2001
From: Andrei Karas <akaras@inbox.ru>
Date: Sun, 8 Jun 2014 16:07:28 +0300
Subject: Clean modernopenglgraphics from legacy code.

Now it cant draw anything.
---
 src/render/modernopenglgraphics.cpp | 806 +-----------------------------------
 src/render/modernopenglgraphics.h   |  12 +-
 2 files changed, 8 insertions(+), 810 deletions(-)

(limited to 'src')

diff --git a/src/render/modernopenglgraphics.cpp b/src/render/modernopenglgraphics.cpp
index 553a864e3..2b771a2bb 100644
--- a/src/render/modernopenglgraphics.cpp
+++ b/src/render/modernopenglgraphics.cpp
@@ -22,7 +22,7 @@
 
 #include "main.h"
 
-#ifdef USE_OPENGL
+#if defined USE_OPENGL && !defined ANDROID
 
 #include "render/modernopenglgraphics.h"
 
@@ -41,32 +41,6 @@
 
 #include "debug.h"
 
-#define vertFill2D(tVar, vVar, x1, y1, x2, y2, dstX, dstY, w, h) \
-    tVar[vp + 0] = x1; \
-    tVar[vp + 1] = y1; \
-    tVar[vp + 2] = x2; \
-    tVar[vp + 3] = y1; \
-    tVar[vp + 4] = x2; \
-    tVar[vp + 5] = y2; \
-    tVar[vp + 6] = x1; \
-    tVar[vp + 7] = y1; \
-    tVar[vp + 8] = x1; \
-    tVar[vp + 9] = y2; \
-    tVar[vp + 10] = x2; \
-    tVar[vp + 11] = y2; \
-    vVar[vp + 0] = static_cast<GLshort>(dstX); \
-    vVar[vp + 1] = static_cast<GLshort>(dstY); \
-    vVar[vp + 2] = static_cast<GLshort>(dstX + w); \
-    vVar[vp + 3] = static_cast<GLshort>(dstY); \
-    vVar[vp + 4] = static_cast<GLshort>(dstX + w); \
-    vVar[vp + 5] = static_cast<GLshort>(dstY + h); \
-    vVar[vp + 6] = static_cast<GLshort>(dstX); \
-    vVar[vp + 7] = static_cast<GLshort>(dstY); \
-    vVar[vp + 8] = static_cast<GLshort>(dstX); \
-    vVar[vp + 9] = static_cast<GLshort>(dstY + h); \
-    vVar[vp + 10] = static_cast<GLshort>(dstX + w); \
-    vVar[vp + 11] = static_cast<GLshort>(dstY + h);
-
 GLuint ModernOpenGLGraphics::mLastImage = 0;
 #ifdef DEBUG_DRAW_CALLS
 unsigned int ModernOpenGLGraphics::mDrawCalls = 0;
@@ -158,41 +132,6 @@ static inline void drawQuad(const Image *const image,
                             const int dstX, const int dstY,
                             const int width, const int height)
 {
-//    if (OpenGLImageHelper::mTextureType == GL_TEXTURE_2D)
-    {
-        const float tw = static_cast<float>(image->mTexWidth);
-        const float th = static_cast<float>(image->mTexHeight);
-        // Find OpenGL normalized texture coordinates.
-        const float texX1 = static_cast<float>(srcX) / tw;
-        const float texY1 = static_cast<float>(srcY) / th;
-        const float texX2 = static_cast<float>(srcX + width) / tw;
-        const float texY2 = static_cast<float>(srcY + height) / th;
-
-        GLfloat tex[] =
-        {
-            texX1, texY1,
-            texX2, texY1,
-            texX1, texY2,
-            texX2, texY2
-        };
-
-        GLshort vert[] =
-        {
-            static_cast<GLshort>(dstX), static_cast<GLshort>(dstY),
-            static_cast<GLshort>(dstX + width), static_cast<GLshort>(dstY),
-            static_cast<GLshort>(dstX), static_cast<GLshort>(dstY + height),
-            static_cast<GLshort>(dstX + width),
-                static_cast<GLshort>(dstY + height)
-        };
-
-        glVertexPointer(2, GL_SHORT, 0, &vert);
-        glTexCoordPointer(2, GL_FLOAT, 0, &tex);
-
-#ifdef DEBUG_DRAW_CALLS
-        ModernOpenGLGraphics::mDrawCalls ++;
-#endif
-        glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
-    }
 }
 
 static inline void drawRescaledQuad(const Image *const image,
@@ -202,42 +141,6 @@ static inline void drawRescaledQuad(const Image *const image,
                                     const int desiredWidth,
                                     const int desiredHeight)
 {
-//    if (OpenGLImageHelper::mTextureType == GL_TEXTURE_2D)
-    {
-        const float tw = static_cast<float>(image->mTexWidth);
-        const float th = static_cast<float>(image->mTexHeight);
-        // Find OpenGL normalized texture coordinates.
-        const float texX1 = static_cast<float>(srcX) / tw;
-        const float texY1 = static_cast<float>(srcY) / th;
-        const float texX2 = static_cast<float>(srcX + width) / tw;
-        const float texY2 = static_cast<float>(srcY + height) / th;
-
-        GLfloat tex[] =
-        {
-            texX1, texY1,
-            texX2, texY1,
-            texX1, texY2,
-            texX2, texY2
-        };
-
-        GLshort vert[] =
-        {
-            static_cast<GLshort>(dstX), static_cast<GLshort>(dstY),
-            static_cast<GLshort>(dstX + desiredWidth),
-                static_cast<GLshort>(dstY),
-            static_cast<GLshort>(dstX), static_cast<GLshort>(
-                dstY + desiredHeight),
-            static_cast<GLshort>(dstX + desiredWidth),
-                static_cast<GLshort>(dstY + desiredHeight)
-        };
-        glVertexPointer(2, GL_SHORT, 0, &vert);
-        glTexCoordPointer(2, GL_FLOAT, 0, &tex);
-
-#ifdef DEBUG_DRAW_CALLS
-        ModernOpenGLGraphics::mDrawCalls ++;
-#endif
-        glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
-    }
 }
 
 bool ModernOpenGLGraphics::drawImage(const Image *const image,
@@ -249,154 +152,22 @@ bool ModernOpenGLGraphics::drawImage(const Image *const image,
 bool ModernOpenGLGraphics::drawImageInline(const Image *const image,
                                            int dstX, int dstY)
 {
-    FUNC_BLOCK("Graphics::drawImage", 1)
-    if (!image)
-        return false;
-
-    setColorAlpha(image->mAlpha);
-#ifdef DEBUG_BIND_TEXTURE
-    debugBindTexture(image);
-#endif
-    bindTexture(OpenGLImageHelper::mTextureType, image->mGLImage);
-    setTexturingAndBlending(true);
-
-    const SDL_Rect &imageRect = image->mBounds;
-    drawQuad(image, imageRect.x, imageRect.y,
-        dstX, dstY, imageRect.w, imageRect.h);
-
     return true;
 }
 
 void ModernOpenGLGraphics::drawImageCached(const Image *const image,
                                            int x, int y)
 {
-    if (!image)
-        return;
-
-    if (image->mGLImage != mImageCached)
-    {
-        completeCache();
-        mImageCached = image->mGLImage;
-        mAlphaCached = image->mAlpha;
-    }
-
-    const SDL_Rect &imageRect = image->mBounds;
-    const int srcX = imageRect.x;
-    const int srcY = imageRect.y;
-    const int w = imageRect.w;
-    const int h = imageRect.h;
-
-    if (w == 0 || h == 0)
-        return;
-
-    const float tw = static_cast<float>(image->mTexWidth);
-    const float th = static_cast<float>(image->mTexHeight);
-
-    const unsigned int vLimit = mMaxVertices * 4;
-
-    unsigned int vp = mVpCached;
-
-    // Draw a set of textured rectangles
-//    if (OpenGLImageHelper::mTextureType == GL_TEXTURE_2D)
-    {
-        float texX1 = static_cast<float>(srcX) / tw;
-        float texY1 = static_cast<float>(srcY) / th;
-        float texX2 = static_cast<float>(srcX + w) / tw;
-        float texY2 = static_cast<float>(srcY + h) / th;
-
-        vertFill2D(mFloatTexArrayCached, mShortVertArrayCached,
-            texX1, texY1, texX2, texY2,
-            x, y, w, h);
-
-        vp += 12;
-        if (vp >= vLimit)
-        {
-            completeCache();
-            vp = 0;
-        }
-        else
-        {
-            mVpCached = vp;
-        }
-    }
 }
 
 void ModernOpenGLGraphics::drawPatternCached(const Image *const image,
                                              const int x, const int y,
                                              const int w, const int h)
 {
-    if (!image)
-        return;
-
-    if (image->mGLImage != mImageCached)
-    {
-        completeCache();
-        mImageCached = image->mGLImage;
-    }
-
-    const SDL_Rect &imageRect = image->mBounds;
-    const int srcX = imageRect.x;
-    const int srcY = imageRect.y;
-    const int iw = imageRect.w;
-    const int ih = imageRect.h;
-
-    if (iw == 0 || ih == 0)
-        return;
-
-    const float tw = static_cast<float>(image->mTexWidth);
-    const float th = static_cast<float>(image->mTexHeight);
-
-    unsigned int vp = mVpCached;
-    const unsigned int vLimit = mMaxVertices * 4;
-    // Draw a set of textured rectangles
-//    if (OpenGLImageHelper::mTextureType == GL_TEXTURE_2D)
-//    {
-        const float texX1 = static_cast<float>(srcX) / tw;
-        const float texY1 = static_cast<float>(srcY) / th;
-
-        for (int py = 0; py < h; py += ih)
-        {
-            const int height = (py + ih >= h) ? h - py : ih;
-            const float texY2 = static_cast<float>(srcY + height) / th;
-            const int dstY = y + py;
-            for (int px = 0; px < w; px += iw)
-            {
-                const int width = (px + iw >= w) ? w - px : iw;
-                const int dstX = x + px;
-
-                const float texX2 = static_cast<float>(srcX + width) / tw;
-
-                vertFill2D(mFloatTexArrayCached, mShortVertArrayCached,
-                    texX1, texY1, texX2, texY2,
-                    dstX, dstY, width, height);
-
-                vp += 12;
-                if (vp >= vLimit)
-                {
-                    completeCache();
-                    vp = 0;
-                }
-            }
-        }
-//    }
-    mVpCached = vp;
 }
 
 void ModernOpenGLGraphics::completeCache()
 {
-    if (!mImageCached)
-        return;
-
-    setColorAlpha(mAlphaCached);
-#ifdef DEBUG_BIND_TEXTURE
-//    debugBindTexture(image);
-#endif
-    bindTexture(OpenGLImageHelper::mTextureType, mImageCached);
-    setTexturingAndBlending(true);
-
-    drawTriangleArrayfsCached(mVpCached);
-    mImageCached = 0;
-    mVpCached = 0;
 }
 
 bool ModernOpenGLGraphics::drawRescaledImage(const Image *const image,
@@ -404,27 +175,6 @@ bool ModernOpenGLGraphics::drawRescaledImage(const Image *const image,
                                              const int desiredWidth,
                                              const int desiredHeight)
 {
-    FUNC_BLOCK("Graphics::drawRescaledImage", 1)
-    if (!image)
-        return false;
-
-    const SDL_Rect &imageRect = image->mBounds;
-
-    // Just draw the image normally when no resizing is necessary,
-    if (imageRect.w == desiredWidth && imageRect.h == desiredHeight)
-        return drawImageInline(image, dstX, dstY);
-
-    setColorAlpha(image->mAlpha);
-#ifdef DEBUG_BIND_TEXTURE
-    debugBindTexture(image);
-#endif
-    bindTexture(OpenGLImageHelper::mTextureType, image->mGLImage);
-    setTexturingAndBlending(true);
-
-    // Draw a textured quad.
-    drawRescaledQuad(image, imageRect.x, imageRect.y, dstX, dstY,
-        imageRect.w, imageRect.h, desiredWidth, desiredHeight);
-
     return true;
 }
 
@@ -439,66 +189,6 @@ void ModernOpenGLGraphics::drawPatternInline(const Image *const image,
                                              const int x, const int y,
                                              const int w, const int h)
 {
-    FUNC_BLOCK("Graphics::drawPattern", 1)
-    if (!image)
-        return;
-
-    const SDL_Rect &imageRect = image->mBounds;
-    const int srcX = imageRect.x;
-    const int srcY = imageRect.y;
-    const int iw = imageRect.w;
-    const int ih = imageRect.h;
-
-    if (iw == 0 || ih == 0)
-        return;
-
-    const float tw = static_cast<float>(image->mTexWidth);
-    const float th = static_cast<float>(image->mTexHeight);
-
-    setColorAlpha(image->mAlpha);
-
-#ifdef DEBUG_BIND_TEXTURE
-    debugBindTexture(image);
-#endif
-    bindTexture(OpenGLImageHelper::mTextureType, image->mGLImage);
-
-    setTexturingAndBlending(true);
-
-    unsigned int vp = 0;
-    const unsigned int vLimit = mMaxVertices * 4;
-    // Draw a set of textured rectangles
-//    if (OpenGLImageHelper::mTextureType == GL_TEXTURE_2D)
-//    {
-        const float texX1 = static_cast<float>(srcX) / tw;
-        const float texY1 = static_cast<float>(srcY) / th;
-
-        for (int py = 0; py < h; py += ih)
-        {
-            const int height = (py + ih >= h) ? h - py : ih;
-            const float texY2 = static_cast<float>(srcY + height) / th;
-            const int dstY = y + py;
-            for (int px = 0; px < w; px += iw)
-            {
-                const int width = (px + iw >= w) ? w - px : iw;
-                const int dstX = x + px;
-
-                const float texX2 = static_cast<float>(srcX + width) / tw;
-
-                vertFill2D(mFloatTexArray, mShortVertArray,
-                    texX1, texY1, texX2, texY2,
-                    dstX, dstY, width, height);
-
-                vp += 12;
-                if (vp >= vLimit)
-                {
-                    drawTriangleArrayfs(vp);
-                    vp = 0;
-                }
-            }
-        }
-        if (vp > 0)
-            drawTriangleArrayfs(vp);
-//    }
 }
 
 void ModernOpenGLGraphics::drawRescaledPattern(const Image *const image,
@@ -507,105 +197,12 @@ void ModernOpenGLGraphics::drawRescaledPattern(const Image *const image,
                                                const int scaledWidth,
                                                const int scaledHeight)
 {
-    if (!image)
-        return;
-
-    if (scaledWidth == 0 || scaledHeight == 0)
-        return;
-
-    const SDL_Rect &imageRect = image->mBounds;
-    const int srcX = imageRect.x;
-    const int srcY = imageRect.y;
-    const int iw = imageRect.w;
-    const int ih = imageRect.h;
-    if (iw == 0 || ih == 0)
-        return;
-
-    setColorAlpha(image->mAlpha);
-
-#ifdef DEBUG_BIND_TEXTURE
-    debugBindTexture(image);
-#endif
-    bindTexture(OpenGLImageHelper::mTextureType, image->mGLImage);
-
-    setTexturingAndBlending(true);
-
-    unsigned int vp = 0;
-    const unsigned int vLimit = mMaxVertices * 4;
-
-    // Draw a set of textured rectangles
-//    if (OpenGLImageHelper::mTextureType == GL_TEXTURE_2D)
-//    {
-        const float tw = static_cast<float>(image->mTexWidth);
-        const float th = static_cast<float>(image->mTexHeight);
-
-        const float texX1 = static_cast<float>(srcX) / tw;
-        const float texY1 = static_cast<float>(srcY) / th;
-
-        const float tFractionW = iw / tw;
-        const float tFractionH = ih / th;
-
-        for (int py = 0; py < h; py += scaledHeight)
-        {
-            const int height = (py + scaledHeight >= h)
-                ? h - py : scaledHeight;
-            const int dstY = y + py;
-            const float visibleFractionH = static_cast<float>(height)
-                / scaledHeight;
-            const float texY2 = texY1 + tFractionH * visibleFractionH;
-            for (int px = 0; px < w; px += scaledWidth)
-            {
-                const int width = (px + scaledWidth >= w)
-                    ? w - px : scaledWidth;
-                const int dstX = x + px;
-                const float visibleFractionW = static_cast<float>(width)
-                    / scaledWidth;
-                const float texX2 = texX1 + tFractionW * visibleFractionW;
-
-                vertFill2D(mFloatTexArray, mShortVertArray,
-                    texX1, texY1, texX2, texY2,
-                    dstX, dstY, width, height);
-
-                vp += 12;
-                if (vp >= vLimit)
-                {
-                    drawTriangleArrayfs(vp);
-                    vp = 0;
-                }
-            }
-        }
-        if (vp > 0)
-            drawTriangleArrayfs(vp);
-//    }
 }
 
 inline void ModernOpenGLGraphics::drawVertexes(const
                                                NormalOpenGLGraphicsVertexes
                                                &ogl)
 {
-    const std::vector<GLshort*> &shortVertPool = ogl.mShortVertPool;
-    std::vector<GLshort*>::const_iterator iv;
-    const std::vector<GLshort*>::const_iterator iv_end = shortVertPool.end();
-    const std::vector<int> &vp = ogl.mVp;
-    std::vector<int>::const_iterator ivp;
-    const std::vector<int>::const_iterator ivp_end = vp.end();
-
-    // Draw a set of textured rectangles
-//    if (OpenGLImageHelper::mTextureType == GL_TEXTURE_2D)
-    {
-        const std::vector<GLfloat*> &floatTexPool = ogl.mFloatTexPool;
-        std::vector<GLfloat*>::const_iterator ft;
-        const std::vector<GLfloat*>::const_iterator
-            ft_end = floatTexPool.end();
-
-        for (iv = shortVertPool.begin(), ft = floatTexPool.begin(),
-             ivp = vp.begin();
-             iv != iv_end && ft != ft_end && ivp != ivp_end;
-             ++ iv, ++ ft, ++ ivp)
-        {
-            drawTriangleArrayfs(*iv, *ft, *ivp);
-        }
-    }
 }
 
 void ModernOpenGLGraphics::calcPattern(ImageVertexes *const vert,
@@ -621,62 +218,6 @@ void ModernOpenGLGraphics::calcPatternInline(ImageVertexes *const vert,
                                              const int x, const int y,
                                              const int w, const int h) const
 {
-    if (!image || !vert)
-        return;
-
-    const SDL_Rect &imageRect = image->mBounds;
-    const int srcX = imageRect.x;
-    const int srcY = imageRect.y;
-    const int iw = imageRect.w;
-    const int ih = imageRect.h;
-
-    if (iw == 0 || ih == 0)
-        return;
-
-    const float tw = static_cast<float>(image->mTexWidth);
-    const float th = static_cast<float>(image->mTexHeight);
-
-    const unsigned int vLimit = mMaxVertices * 4;
-
-    NormalOpenGLGraphicsVertexes &ogl = vert->ogl;
-    unsigned int vp = ogl.continueVp();
-
-    // Draw a set of textured rectangles
-//    if (OpenGLImageHelper::mTextureType == GL_TEXTURE_2D)
-    {
-        const float texX1 = static_cast<float>(srcX) / tw;
-        const float texY1 = static_cast<float>(srcY) / th;
-
-        GLfloat *floatTexArray = ogl.continueFloatTexArray();
-        GLshort *shortVertArray = ogl.continueShortVertArray();
-
-        for (int py = 0; py < h; py += ih)
-        {
-            const int height = (py + ih >= h) ? h - py : ih;
-            const int dstY = y + py;
-            const float texY2 = static_cast<float>(srcY + height) / th;
-            for (int px = 0; px < w; px += iw)
-            {
-                const int width = (px + iw >= w) ? w - px : iw;
-                const int dstX = x + px;
-                const float texX2 = static_cast<float>(srcX + width) / tw;
-
-                vertFill2D(floatTexArray, shortVertArray,
-                    texX1, texY1, texX2, texY2,
-                    dstX, dstY, width, height);
-
-                vp += 12;
-                if (vp >= vLimit)
-                {
-                    floatTexArray = ogl.switchFloatTexArray();
-                    shortVertArray = ogl.switchShortVertArray();
-                    ogl.switchVp(vp);
-                    vp = 0;
-                }
-            }
-        }
-    }
-    ogl.switchVp(vp);
 }
 
 void ModernOpenGLGraphics::calcTileCollection(ImageCollection *const vertCol,
@@ -701,21 +242,6 @@ void ModernOpenGLGraphics::calcTileCollection(ImageCollection *const vertCol,
 void ModernOpenGLGraphics::drawTileCollection(const ImageCollection
                                               *const vertCol)
 {
-    const ImageVertexesVector &draws = vertCol->draws;
-    const ImageCollectionCIter it_end = draws.end();
-    for (ImageCollectionCIter it = draws.begin(); it != it_end; ++ it)
-    {
-        const ImageVertexes *const vert = *it;
-        const Image *const image = vert->image;
-
-        setColorAlpha(image->mAlpha);
-#ifdef DEBUG_BIND_TEXTURE
-        debugBindTexture(image);
-#endif
-        bindTexture(OpenGLImageHelper::mTextureType, image->mGLImage);
-        setTexturingAndBlending(true);
-        drawVertexes(vert->ogl);
-    }
 }
 
 void ModernOpenGLGraphics::calcPattern(ImageCollection* const vertCol,
@@ -751,68 +277,10 @@ void ModernOpenGLGraphics::calcTileVertexesInline(ImageVertexes *const vert,
                                                   const Image *const image,
                                                   int dstX, int dstY) const
 {
-    if (!vert || !image)
-        return;
-
-    const SDL_Rect &imageRect = image->mBounds;
-    const int srcX = imageRect.x;
-    const int srcY = imageRect.y;
-    const int w = imageRect.w;
-    const int h = imageRect.h;
-
-    if (w == 0 || h == 0)
-        return;
-
-    const float tw = static_cast<float>(image->mTexWidth);
-    const float th = static_cast<float>(image->mTexHeight);
-
-    const unsigned int vLimit = mMaxVertices * 4;
-
-    NormalOpenGLGraphicsVertexes &ogl = vert->ogl;
-
-//    std::vector<int> *vps = ogl.getVp();
-    unsigned int vp = ogl.continueVp();
-
-    // Draw a set of textured rectangles
-//    if (OpenGLImageHelper::mTextureType == GL_TEXTURE_2D)
-    {
-        float texX1 = static_cast<float>(srcX) / tw;
-        float texY1 = static_cast<float>(srcY) / th;
-        float texX2 = static_cast<float>(srcX + w) / tw;
-        float texY2 = static_cast<float>(srcY + h) / th;
-
-        GLfloat *const floatTexArray = ogl.continueFloatTexArray();
-        GLshort *const shortVertArray = ogl.continueShortVertArray();
-
-        vertFill2D(floatTexArray, shortVertArray,
-            texX1, texY1, texX2, texY2,
-            dstX, dstY, w, h);
-
-        vp += 12;
-        if (vp >= vLimit)
-        {
-            ogl.switchFloatTexArray();
-            ogl.switchShortVertArray();
-            ogl.switchVp(vp);
-            vp = 0;
-        }
-    }
-    ogl.switchVp(vp);
 }
 
 void ModernOpenGLGraphics::drawTileVertexes(const ImageVertexes *const vert)
 {
-    if (!vert)
-        return;
-    const Image *const image = vert->image;
-
-    setColorAlpha(image->mAlpha);
-#ifdef DEBUG_BIND_TEXTURE
-    debugBindTexture(image);
-#endif
-    bindTexture(OpenGLImageHelper::mTextureType, image->mGLImage);
-    setTexturingAndBlending(true);
-    drawVertexes(vert->ogl);
 }
 
 void ModernOpenGLGraphics::calcWindow(ImageCollection *const vertCol,
@@ -840,8 +308,6 @@ void ModernOpenGLGraphics::calcWindow(ImageCollection *const vertCol,
 void ModernOpenGLGraphics::updateScreen()
 {
     BLOCK_START("Graphics::updateScreen")
-//    glFlush();
-//    glFinish();
 #ifdef DEBUG_DRAW_CALLS
     mLastDrawCalls = mDrawCalls;
     mDrawCalls = 0;
@@ -862,25 +328,6 @@ void ModernOpenGLGraphics::updateScreen()
 
 void ModernOpenGLGraphics::beginDraw()
 {
-    glMatrixMode(GL_TEXTURE);
-    glLoadIdentity();
-
-    glMatrixMode(GL_PROJECTION);
-    glLoadIdentity();
-
-#ifdef ANDROID
-    glOrthof(0.0, static_cast<float>(mRect.w),
-        static_cast<float>(mRect.h),
-        0.0, -1.0, 1.0);
-#else
-    glOrtho(0.0, static_cast<double>(mRect.w),
-        static_cast<double>(mRect.h),
-        0.0, -1.0, 1.0);
-#endif
-
-    glMatrixMode(GL_MODELVIEW);
-    glLoadIdentity();
-
     glEnable(GL_SCISSOR_TEST);
     glDisable(GL_DITHER);
     glDisable(GL_LIGHTING);
@@ -889,26 +336,20 @@ void ModernOpenGLGraphics::beginDraw()
     glDisable(GL_COLOR_LOGIC_OP);
     glDisable(GL_COLOR_MATERIAL);
     glDisable(GL_STENCIL_TEST);
+    glEnable(GL_TEXTURE_2D);
 
     glShadeModel(GL_FLAT);
 
     glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
 
-    glEnableClientState(GL_VERTEX_ARRAY);
-    glDisableClientState(GL_TEXTURE_COORD_ARRAY);
-
 #ifndef ANDROID
     glHint(GL_LINE_SMOOTH_HINT, GL_FASTEST);
-    glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_FASTEST);
-    glHint(GL_POINT_SMOOTH_HINT, GL_FASTEST);
     glHint(GL_POLYGON_SMOOTH_HINT, GL_FASTEST);
 #ifndef __MINGW32__
     glHint(GL_TEXTURE_COMPRESSION_HINT, GL_FASTEST);
 #endif
 #endif
 
-//    glScalef(0.5F, 0.5F, 0.5F);
-
     pushClipArea(Rect(0, 0, mRect.w, mRect.h));
 }
 
@@ -976,31 +417,16 @@ SDL_Surface* ModernOpenGLGraphics::getScreenshot()
 
 bool ModernOpenGLGraphics::pushClipArea(const Rect &area)
 {
-    int transX = 0;
-    int transY = 0;
-
-    if (!mClipStack.empty())
-    {
-        const ClipRect &clipArea = mClipStack.top();
-        transX = -clipArea.xOffset;
-        transY = -clipArea.yOffset;
-    }
-
     const bool result = Graphics::pushClipArea(area);
 
     const ClipRect &clipArea = mClipStack.top();
-    transX += clipArea.xOffset;
-    transY += clipArea.yOffset;
 
-    if (transX || transY)
-    {
-        glTranslatef(static_cast<GLfloat>(transX),
-                     static_cast<GLfloat>(transY), 0);
-    }
+/*
     glScissor(clipArea.x * mScale,
         (mRect.h - clipArea.y - clipArea.height) * mScale,
         clipArea.width * mScale,
         clipArea.height * mScale);
+*/
     return result;
 }
 
@@ -1008,59 +434,25 @@ void ModernOpenGLGraphics::popClipArea()
 {
     if (mClipStack.empty())
         return;
-
-    const ClipRect &clipArea1 = mClipStack.top();
-    int transX = -clipArea1.xOffset;
-    int transY = -clipArea1.yOffset;
-
     Graphics::popClipArea();
-
     if (mClipStack.empty())
         return;
 
     const ClipRect &clipArea = mClipStack.top();
-    transX += clipArea.xOffset;
-    transY += clipArea.yOffset;
-    if (transX || transY)
-    {
-        glTranslatef(static_cast<GLfloat>(transX),
-                     static_cast<GLfloat>(transY), 0);
-    }
+/*
     glScissor(clipArea.x * mScale,
         (mRect.h - clipArea.y - clipArea.height) * mScale,
         clipArea.width * mScale,
         clipArea.height * mScale);
+*/
 }
 
-#ifdef ANDROID
-void ModernOpenGLGraphics::drawPoint(int x A_UNUSED, int y A_UNUSED)
-#else
 void ModernOpenGLGraphics::drawPoint(int x, int y)
-#endif
 {
-    setTexturingAndBlending(false);
-    restoreColor();
-
-#ifdef ANDROID
-    // TODO need fix
-#else
-    glBegin(GL_POINTS);
-    glVertex2i(x, y);
-    glEnd();
-#endif
 }
 
 void ModernOpenGLGraphics::drawLine(int x1, int y1, int x2, int y2)
 {
-    setTexturingAndBlending(false);
-    restoreColor();
-
-    mShortVertArray[0] = static_cast<GLshort>(x1);
-    mShortVertArray[1] = static_cast<GLshort>(y1);
-    mShortVertArray[2] = static_cast<GLshort>(x2);
-    mShortVertArray[3] = static_cast<GLshort>(y2);
-
-    drawLineArrays(4);
 }
 
 void ModernOpenGLGraphics::drawRectangle(const Rect& rect)
@@ -1077,13 +469,6 @@ void ModernOpenGLGraphics::setTexturingAndBlending(const bool enable)
 {
     if (enable)
     {
-        if (!mTexture)
-        {
-            glEnable(OpenGLImageHelper::mTextureType);
-            glEnableClientState(GL_TEXTURE_COORD_ARRAY);
-            mTexture = true;
-        }
-
         if (!mAlpha)
         {
             glEnable(GL_BLEND);
@@ -1092,128 +477,23 @@ void ModernOpenGLGraphics::setTexturingAndBlending(const bool enable)
     }
     else
     {
-        mLastImage = 0;
-        if (mAlpha && !mColorAlpha)
+        if (mAlpha)
         {
             glDisable(GL_BLEND);
             mAlpha = false;
         }
-        else if (!mAlpha && mColorAlpha)
-        {
-            glEnable(GL_BLEND);
-            mAlpha = true;
-        }
-
-        if (mTexture)
-        {
-            glDisable(OpenGLImageHelper::mTextureType);
-            glDisableClientState(GL_TEXTURE_COORD_ARRAY);
-            mTexture = false;
-        }
     }
 }
 
 void ModernOpenGLGraphics::drawRectangle(const Rect& rect,
                                          const bool filled)
 {
-    BLOCK_START("Graphics::drawRectangle")
-    setTexturingAndBlending(false);
-    restoreColor();
-
-    const GLshort x = static_cast<GLshort>(rect.x);
-    const GLshort y = static_cast<GLshort>(rect.y);
-    const GLshort width = static_cast<GLshort>(rect.width);
-    const GLshort height = static_cast<GLshort>(rect.height);
-    const GLshort xw = static_cast<GLshort>(rect.x + width);
-    const GLshort yh = static_cast<GLshort>(rect.y + height);
-
-    if (filled)
-    {
-        GLshort vert[] =
-        {
-            x, y,
-            xw, y,
-            x, yh,
-            xw, yh
-        };
-
-        glVertexPointer(2, GL_SHORT, 0, &vert);
-#ifdef DEBUG_DRAW_CALLS
-        mDrawCalls ++;
-#endif
-        glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
-    }
-    else
-    {
-        GLshort vert[] =
-        {
-            x, y,
-            xw, y,
-            xw, yh,
-            x, yh
-        };
-
-        glVertexPointer(2, GL_SHORT, 0, &vert);
-#ifdef DEBUG_DRAW_CALLS
-        mDrawCalls ++;
-#endif
-        glDrawArrays(GL_LINE_LOOP, 0, 4);
-    }
-    BLOCK_END("Graphics::drawRectangle")
 }
 
 bool ModernOpenGLGraphics::drawNet(const int x1, const int y1,
                                    const int x2, const int y2,
                                    const int width, const int height)
 {
-    unsigned int vp = 0;
-    const unsigned int vLimit = mMaxVertices * 4;
-
-    setTexturingAndBlending(false);
-    restoreColor();
-
-    const GLshort xs1 = static_cast<GLshort>(x1);
-    const GLshort xs2 = static_cast<GLshort>(x2);
-    const GLshort ys1 = static_cast<GLshort>(y1);
-    const GLshort ys2 = static_cast<GLshort>(y2);
-    const int16_t width1 = static_cast<int16_t>(width);
-    const int16_t height1 = static_cast<int16_t>(height);
-
-    for (int16_t y = static_cast<int16_t>(y1); y < y2; y += height1)
-    {
-        mShortVertArray[vp + 0] = xs1;
-        mShortVertArray[vp + 1] = y;
-
-        mShortVertArray[vp + 2] = xs2;
-        mShortVertArray[vp + 3] = y;
-
-        vp += 4;
-        if (vp >= vLimit)
-        {
-            drawLineArrays(vp);
-            vp = 0;
-        }
-    }
-
-    for (int16_t x = static_cast<int16_t>(x1); x < x2; x += width1)
-    {
-        mShortVertArray[vp + 0] = x;
-        mShortVertArray[vp + 1] = ys1;
-
-        mShortVertArray[vp + 2] = x;
-        mShortVertArray[vp + 3] = ys2;
-
-        vp += 4;
-        if (vp >= vLimit)
-        {
-            drawLineArrays(vp);
-            vp = 0;
-        }
-    }
-
-    if (vp > 0)
-        drawLineArrays(vp);
-
     return true;
 }
 
@@ -1227,53 +507,6 @@ void ModernOpenGLGraphics::bindTexture(const GLenum target,
     }
 }
 
-inline void ModernOpenGLGraphics::drawTriangleArrayfs(const int size)
-{
-    glVertexPointer(2, GL_SHORT, 0, mShortVertArray);
-    glTexCoordPointer(2, GL_FLOAT, 0, mFloatTexArray);
-
-#ifdef DEBUG_DRAW_CALLS
-    mDrawCalls ++;
-#endif
-    glDrawArrays(GL_TRIANGLES, 0, size / 2);
-}
-
-inline void ModernOpenGLGraphics::drawTriangleArrayfsCached(const int size)
-{
-    glVertexPointer(2, GL_SHORT, 0, mShortVertArrayCached);
-    glTexCoordPointer(2, GL_FLOAT, 0, mFloatTexArrayCached);
-
-#ifdef DEBUG_DRAW_CALLS
-    mDrawCalls ++;
-#endif
-    glDrawArrays(GL_TRIANGLES, 0, size / 2);
-}
-
-inline void ModernOpenGLGraphics::drawTriangleArrayfs(const GLshort *const
-                                                      shortVertArray,
-                                                      const GLfloat *const
-                                                      floatTexArray,
-                                                      const int size)
-{
-    glVertexPointer(2, GL_SHORT, 0, shortVertArray);
-    glTexCoordPointer(2, GL_FLOAT, 0, floatTexArray);
-
-#ifdef DEBUG_DRAW_CALLS
-    mDrawCalls ++;
-#endif
-    glDrawArrays(GL_TRIANGLES, 0, size / 2);
-}
-
-inline void ModernOpenGLGraphics::drawLineArrays(const int size)
-{
-    glVertexPointer(2, GL_SHORT, 0, mShortVertArray);
-
-#ifdef DEBUG_DRAW_CALLS
-    mDrawCalls ++;
-#endif
-    glDrawArrays(GL_LINES, 0, size / 2);
-}
-
 void ModernOpenGLGraphics::dumpSettings()
 {
     GLint test[1000];
@@ -1294,34 +527,10 @@ void ModernOpenGLGraphics::dumpSettings()
     }
 }
 
-void ModernOpenGLGraphics::setColorAlpha(const float alpha)
-{
-    if (!mIsByteColor && mFloatColor == alpha)
-        return;
-
-    glColor4f(1.0F, 1.0F, 1.0F, alpha);
-    mIsByteColor = false;
-    mFloatColor = alpha;
-}
-
-void ModernOpenGLGraphics::restoreColor()
-{
-    if (mIsByteColor && mByteColor == mColor)
-        return;
-
-    glColor4ub(static_cast<GLubyte>(mColor.r),
-               static_cast<GLubyte>(mColor.g),
-               static_cast<GLubyte>(mColor.b),
-               static_cast<GLubyte>(mColor.a));
-    mIsByteColor = true;
-    mByteColor = mColor;
-}
-
 void ModernOpenGLGraphics::drawImageRect(const int x, const int y,
                                          const int w, const int h,
                                          const ImageRect &imgRect)
 {
-    #include "render/graphics_drawImageRect.hpp"
 }
 
 void ModernOpenGLGraphics::calcImageRect(ImageVertexes *const vert,
@@ -1329,7 +538,6 @@ void ModernOpenGLGraphics::calcImageRect(ImageVertexes *const vert,
                                          const int w, const int h,
                                          const ImageRect &imgRect)
 {
-    #include "render/graphics_calcImageRect.hpp"
 }
 
 void ModernOpenGLGraphics::clearScreen() const
diff --git a/src/render/modernopenglgraphics.h b/src/render/modernopenglgraphics.h
index b6a77640b..09edcbd92 100644
--- a/src/render/modernopenglgraphics.h
+++ b/src/render/modernopenglgraphics.h
@@ -24,7 +24,7 @@
 #define RENDER_MODERNOPENGLGRAPHICS_H
 
 #include "main.h"
-#ifdef USE_OPENGL
+#if defined USE_OPENGL && !defined ANDROID
 
 #include "localconsts.h"
 #include "render/graphics.h"
@@ -56,16 +56,6 @@ class ModernOpenGLGraphics final : public Graphics
 
         ~ModernOpenGLGraphics();
 
-        inline void drawTriangleArrayfs(const GLshort *const shortVertArray,
-                                        const GLfloat *const floatTexArray,
-                                        const int size);
-
-        inline void drawTriangleArrayfs(const int size);
-
-        inline void drawTriangleArrayfsCached(const int size);
-
-        inline void drawLineArrays(const int size);
-
         #include "render/graphicsdef.hpp"
 
         #include "render/openglgraphicsdef.hpp"
-- 
cgit v1.2.3-70-g09d2