Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 19733a32 authored by Mathias Agopian's avatar Mathias Agopian
Browse files

minor clean-up of the GLESRenderer

Change-Id: I978dea25b7687fbbbb283f09c24e115d9bad49a2
parent 931bda1c
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -506,8 +506,10 @@ void Layer::onDraw(const sp<const DisplayDevice>& hw, const Region& clip) const
void Layer::clearWithOpenGL(const sp<const DisplayDevice>& hw, const Region& clip,
        float red, float green, float blue, float alpha) const
{
    RenderEngine& engine(mFlinger->getRenderEngine());
    computeGeometry(hw, mMesh);
    mFlinger->getRenderEngine().fillWithColor(mMesh, red, green, blue, alpha);
    engine.setupFillWithColor(red, green, blue, alpha);
    engine.drawMesh(mMesh);
}

void Layer::clearWithOpenGL(
+1 −8
Original line number Diff line number Diff line
@@ -209,18 +209,11 @@ void GLES11RenderEngine::unbindFramebuffer(uint32_t texName, uint32_t fbName) {
    glDeleteTextures(1, &texName);
}

void GLES11RenderEngine::fillWithColor(const Mesh& mesh, float r, float g, float b, float a) {
void GLES11RenderEngine::setupFillWithColor(float r, float g, float b, float a) {
    glColor4f(r, g, b, a);
    glDisable(GL_TEXTURE_EXTERNAL_OES);
    glDisable(GL_TEXTURE_2D);
    glDisable(GL_BLEND);

    glVertexPointer(mesh.getVertexSize(),
            GL_FLOAT,
            mesh.getByteStride(),
            mesh.getPositions());

    glDrawArrays(mesh.getPrimitive(), 0, mesh.getVertexCount());
}

void GLES11RenderEngine::drawMesh(const Mesh& mesh) {
+1 −1
Original line number Diff line number Diff line
@@ -54,10 +54,10 @@ protected:
    virtual void setupDimLayerBlending(int alpha);
    virtual void setupLayerTexturing(const Texture& texture);
    virtual void setupLayerBlackedOut();
    virtual void setupFillWithColor(float r, float g, float b, float a) ;
    virtual void disableTexturing();
    virtual void disableBlending();

    virtual void fillWithColor(const Mesh& mesh, float r, float g, float b, float a) ;
    virtual void drawMesh(const Mesh& mesh);

    virtual size_t getMaxTextureSize() const;
+5 −12
Original line number Diff line number Diff line
@@ -186,20 +186,13 @@ void GLES20RenderEngine::unbindFramebuffer(uint32_t texName, uint32_t fbName) {
    glDeleteTextures(1, &texName);
}

void GLES20RenderEngine::fillWithColor(const Mesh& mesh, float r, float g, float b, float a) {
void GLES20RenderEngine::setupFillWithColor(float r, float g, float b, float a) {
    mState.setPlaneAlpha(1.0f);
    mState.setPremultipliedAlpha(true);
    mState.setOpaque(false);
    mState.setColor(r, g, b, a);
    disableTexturing();
    mState.disableTexture();
    glDisable(GL_BLEND);

    ProgramCache::getInstance().useProgram(mState);

    glVertexAttribPointer(Program::position,
            mesh.getVertexSize(),
            GL_FLOAT, GL_FALSE,
            mesh.getByteStride(),
            mesh.getPositions());

    glDrawArrays(mesh.getPrimitive(), 0, mesh.getVertexCount());
}

void GLES20RenderEngine::drawMesh(const Mesh& mesh) {
+1 −1
Original line number Diff line number Diff line
@@ -58,10 +58,10 @@ protected:
    virtual void setupDimLayerBlending(int alpha);
    virtual void setupLayerTexturing(const Texture& texture);
    virtual void setupLayerBlackedOut();
    virtual void setupFillWithColor(float r, float g, float b, float a);
    virtual void disableTexturing();
    virtual void disableBlending();

    virtual void fillWithColor(const Mesh& mesh, float r, float g, float b, float a);
    virtual void drawMesh(const Mesh& mesh);

    virtual size_t getMaxTextureSize() const;
Loading