Sign in to follow this  
Florian22222

Problem with ProjMatrix

Recommended Posts

Hey there!

 

I am working on my own 2d sprite framework for android, but I am struggling with defining the right projection-matrix.

Please take a look at the attached screenshot...

If I use a normal Matrix.frustumM call it works as expected, but as soon as I use orthoM there´s only a line on the screen...

 

Here´s the code where the projectionmatrix is defined:

@Override
    public void onSurfaceChanged(GL10 unused, int width, int height) {
        // Adjust the viewport based on geometry changes,
        // such as screen rotation
        GLES20.glViewport(0, 0, width, height);
        
        Matrix.orthoM(mProjMatrix, 0, 0, width, 0, height, -1f, 1f);
    }

 

Here the matrix is used and multiplied by the view matrix:

@Override
    public void onDrawFrame(GL10 unused) {

        // Draw background color
        GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT);
        
        
        Matrix.setLookAtM(mVMatrix, 0, 0, 0, -3, 0f, 0f, 0f, 0f, 1.0f, 0.0f);
        
        // Calculate the projection and view transformation
        Matrix.multiplyMM(mVPMatrix, 0, mProjMatrix, 0, mVMatrix, 0);
        
        Square.getInstance().draw(mVPMatrix);
    }

 

Here is a part of the draw()-method where the matrix gets passed to the shader:

// Apply the projection and view transformation
        GLES20.glUniformMatrix4fv(mMVPMatrixHandle, 1, false, mVPMatrix, 0);

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this