private static int setupProgram(String vShaderPath, String fShaderPath) { int program = glCreateProgramObjectARB(); int vShader = 0; int fShader = 0; if (program != 0) { vShader = createVertShader(vShaderPath); fShader = createFragShader(fShaderPath); } if (vShader != 0 || fShader != 0) { if (vShader != 0) { glAttachObjectARB(program, vShader); } if (fShader != 0) { glAttachObjectARB(program, fShader); } if (entityAttrib >= 0) { glBindAttribLocationARB(program, entityAttrib, "mc_Entity"); } glLinkProgramARB(program); glValidateProgramARB(program); printLogInfo(program); } else if (program != 0) { glDeleteObjectARB(program); program = 0; } return program; }