Example usage for org.lwjgl.opengl GL20 glDeleteShader

List of usage examples for org.lwjgl.opengl GL20 glDeleteShader

Introduction

In this page you can find the example usage for org.lwjgl.opengl GL20 glDeleteShader.

Prototype

public static void glDeleteShader(@NativeType("GLuint") int shader) 

Source Link

Document

Deletes a shader object.

Usage

From source file:thebounzer.org.lwgldemo.glutils.ShaderProgram.java

License:Open Source License

private void deleteShader(GenericShader shader) {
    GL20.glDetachShader(pId, shader.getShaderId());
    GL20.glDeleteShader(shader.getShaderId());
}

From source file:tk.ivybits.engine.gl.GL.java

License:Open Source License

public static void glDeleteShader(int a) {
    GL20.glDeleteShader(a);
}

From source file:vertigo.graphics.lwjgl.ShaderUtils.java

License:Open Source License

public static int attachShaders(String vertexCode, String fragmentCode) throws Exception {
    int vertexShaderProgram;
    int fragmentShaderProgram;
    int shaderprogram;
    String log = "";

    vertexShaderProgram = compileShader(vertexCode, GL20.GL_VERTEX_SHADER);
    fragmentShaderProgram = compileShader(fragmentCode, GL20.GL_FRAGMENT_SHADER);

    shaderprogram = GL20.glCreateProgram();
    GL20.glAttachShader(shaderprogram, vertexShaderProgram);
    GL20.glAttachShader(shaderprogram, fragmentShaderProgram);
    GL20.glLinkProgram(shaderprogram);/*from w w  w  . j av  a2  s  .c  o  m*/

    //grab our info log
    String infoLog = GL20.glGetProgramInfoLog(shaderprogram,
            GL20.glGetProgrami(shaderprogram, GL20.GL_INFO_LOG_LENGTH));

    //if some log exists, append it 
    if (infoLog != null && infoLog.trim().length() != 0)
        log += infoLog;

    //if the link failed, throw some sort of exception
    if (GL20.glGetProgrami(shaderprogram, GL20.GL_LINK_STATUS) == GL11.GL_FALSE)
        throw new LWJGLException("Failure in linking program. Error log:\n" + infoLog);

    //detach and delete the shaders which are no longer needed
    GL20.glDetachShader(shaderprogram, vertexShaderProgram);
    GL20.glDetachShader(shaderprogram, fragmentShaderProgram);
    GL20.glDeleteShader(vertexShaderProgram);
    GL20.glDeleteShader(fragmentShaderProgram);

    GL20.glValidateProgram(shaderprogram);

    return shaderprogram;
}

From source file:voxicity.ChunkNode.java

License:Open Source License

int create_vert_shader(String filename) {
    int shader = GL20.glCreateShader(GL20.GL_VERTEX_SHADER);

    String code_text = "";
    String line;//from  w w w  . j a  v  a  2 s  .  c  om
    try {
        BufferedReader reader = new BufferedReader(new FileReader(filename));
        while ((line = reader.readLine()) != null) {
            code_text += line + "\n";
        }
    } catch (Exception e) {
        System.out.println("Reading vertex shader code failed");
        e.printStackTrace();
    }

    GL20.glShaderSource(shader, code_text);

    GL20.glCompileShader(shader);

    System.out.println("Compiling vertex shader: " + filename);
    if (GL20.glGetShader(shader, GL20.GL_COMPILE_STATUS) == GL11.GL_FALSE) {
        print_shader_log(shader);
    }

    if (check_shader_error(shader)) {
        GL20.glDeleteShader(shader);
        shader = 0;
    }

    return shader;
}

From source file:voxicity.ChunkNode.java

License:Open Source License

int create_frag_shader(String filename) {
    int shader = GL20.glCreateShader(GL20.GL_FRAGMENT_SHADER);

    String code_text = "";
    String line;//  www.  ja v  a  2  s  .  c o m
    try {
        BufferedReader reader = new BufferedReader(new FileReader(filename));
        while ((line = reader.readLine()) != null) {
            code_text += line + "\n";
        }
    } catch (Exception e) {
        System.out.println("Reading vertex shader code failed");
        e.printStackTrace();
    }

    GL20.glShaderSource(shader, code_text);

    System.out.println("Compiling fragment shader: " + filename);
    GL20.glCompileShader(shader);

    if (GL20.glGetShader(shader, GL20.GL_COMPILE_STATUS) == GL11.GL_FALSE) {
        print_shader_log(shader);
    }

    if (check_shader_error(shader)) {
        GL20.glDeleteShader(shader);
        shader = 0;
    }

    return shader;
}

From source file:wrath.client.graphics.ShaderProgram.java

License:Open Source License

@Override
public void close() {
    GL20.glUseProgram(0);/*from w w  w  . java 2 s.c  o  m*/
    GL20.glDetachShader(programID, vertShaderID);
    GL20.glDetachShader(programID, fragShaderID);
    GL20.glDeleteShader(vertShaderID);
    GL20.glDeleteShader(fragShaderID);
    GL20.glDeleteProgram(programID);
    Game.getCurrentInstance().removeFromTrashCleanup(this);
}