Example usage for android.opengl GLES20 GL_TRUE

List of usage examples for android.opengl GLES20 GL_TRUE

Introduction

In this page you can find the example usage for android.opengl GLES20 GL_TRUE.

Prototype

int GL_TRUE

To view the source code for android.opengl GLES20 GL_TRUE.

Click Source Link

Usage

From source file:Main.java

private static int linkProgram(int program) {
    int[] status = new int[1];
    GLES20.glLinkProgram(program);/* ww w  .j  a v  a2s .c o m*/
    GLES20.glGetProgramiv(program, GLES20.GL_LINK_STATUS, status, 0);
    if (status[0] != GLES20.GL_TRUE) {
        Log.e(TAG, "Error linking program: " + GLES20.glGetProgramInfoLog(program));
        return 0;
    }
    return 1;
}

From source file:Main.java

private static int validateProgram(int program) {
    int[] status = new int[1];
    GLES20.glValidateProgram(program);//from w w w .  j a  v a  2  s .  c  o m

    GLES20.glGetProgramiv(program, GLES20.GL_VALIDATE_STATUS, status, 0);
    if (status[0] != GLES20.GL_TRUE) {
        Log.e(TAG, "Error validating program: " + GLES20.glGetProgramInfoLog(program));
        return 0;
    }
    return 1;
}

From source file:Main.java

public static int setupProgram(String vxShaderCode, String frShaderCode) {
    int mProgram;
    int vertexShader = loadShader(GLES20.GL_VERTEX_SHADER, vxShaderCode);
    int fragmentShader = loadShader(GLES20.GL_FRAGMENT_SHADER, frShaderCode);
    if (vertexShader == 0 || fragmentShader == 0) {
        throw new RuntimeException("shader not loaded");
    }/*from   w  ww. jav a2s . c om*/
    mProgram = GLES20.glCreateProgram(); // create empty OpenGL ES Program
    GLES20.glAttachShader(mProgram, vertexShader); // add the vertex shader
    // to program
    GLES20.glAttachShader(mProgram, fragmentShader); // add the fragment
    // shader to program
    GLES20.glLinkProgram(mProgram);

    int[] linkStatus = new int[1];
    GLES20.glGetProgramiv(mProgram, GLES20.GL_LINK_STATUS, linkStatus, 0);
    if (linkStatus[0] != GLES20.GL_TRUE) {
        Log.e("jay", "Could not link program: ");
        Log.e("jay", GLES20.glGetProgramInfoLog(mProgram));
        GLES20.glDeleteProgram(mProgram);
        mProgram = 0;
    }

    return mProgram;
}

From source file:Main.java

/**
 * Creates a new program from the supplied vertex and fragment shaders.
 *
 * @return A handle to the program, or 0 on failure.
 *//*w w  w  .  j a  v  a  2 s . c  om*/
public static int createProgram(String vertexSource, String fragmentSource) {
    int vertexShader = loadShader(GLES20.GL_VERTEX_SHADER, vertexSource);
    if (vertexShader == 0) {
        return 0;
    }
    int pixelShader = loadShader(GLES20.GL_FRAGMENT_SHADER, fragmentSource);
    if (pixelShader == 0) {
        return 0;
    }

    int program = GLES20.glCreateProgram();
    checkGlError("glCreateProgram");
    if (program == 0) {
        Log.e(TAG, "Could not create program");
    }
    GLES20.glAttachShader(program, vertexShader);
    checkGlError("glAttachShader");
    GLES20.glAttachShader(program, pixelShader);
    checkGlError("glAttachShader");
    GLES20.glLinkProgram(program);
    int[] linkStatus = new int[1];
    GLES20.glGetProgramiv(program, GLES20.GL_LINK_STATUS, linkStatus, 0);
    if (linkStatus[0] != GLES20.GL_TRUE) {
        Log.e(TAG, "Could not link program: ");
        Log.e(TAG, GLES20.glGetProgramInfoLog(program));
        GLES20.glDeleteProgram(program);
        program = 0;
    }
    return program;
}