Advertisement
gmfreaky

Untitled

Aug 11th, 2012
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.98 KB | None | 0 0
  1. public class ShaderProgram {
  2.     public int id;
  3.     VertexShader vertShader;
  4.     FragmentShader fragShader;
  5.     public ShaderProgram(VertexShader vertShader, FragmentShader fragShader) {
  6.         this.vertShader = vertShader;
  7.         this.fragShader = fragShader;
  8.         id = ARBShaderObjects.glCreateProgramObjectARB();
  9.         vertShader.attach(id);
  10.         fragShader.attach(id);
  11.        
  12.         ARBShaderObjects.glLinkProgramARB(id);
  13.         if (ARBShaderObjects.glGetObjectParameteriARB(id, ARBShaderObjects.GL_OBJECT_LINK_STATUS_ARB) == GL11.GL_FALSE) {
  14.             System.out.println("Error linking program "+this);
  15.         }
  16.         ARBShaderObjects.glValidateProgramARB(id);
  17.         if (ARBShaderObjects.glGetObjectParameteriARB(id, ARBShaderObjects.GL_OBJECT_VALIDATE_STATUS_ARB) == GL11.GL_FALSE) {
  18.             System.out.println("Error validating program "+this);
  19.         }
  20.     }
  21.    
  22.     public void bind() {
  23.         ARBShaderObjects.glUseProgramObjectARB(id);
  24.     }
  25.    
  26.     @Override
  27.     public String toString() {
  28.         return "ShaderProgram ("+id+"): "+vertShader+" ,"+fragShader;
  29.     }
  30. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement