Class ShaderProgram

java.lang.Object
zombie.core.opengl.ShaderProgram

public final class ShaderProgram extends Object
  • Method Details

    • getName

      public String getName()
    • addCompileListener

      public void addCompileListener(IShaderProgramListener listener)
    • removeCompileListener

      public void removeCompileListener(IShaderProgramListener listener)
    • compile

      public void compile()
      Compiles or re-compiles this program.
    • addShader

      public ShaderUnit addShader(String fileName, ShaderUnit.Type unitType)
    • createShaderProgram

      public static ShaderProgram createShaderProgram(String name, boolean isStatic, boolean compile)
      createShaderProgram Creates and Compiles a Shader Program, using the specified program name. The vertex and fragment shader file names are constructed using the program name.

      eg. create("MyShader") loads "media/shaders/MyShader.vert" loads "media/shaders/MyShader.frag"

      Parameters:
      name - The program name.
      isStatic -
      compile -
      Returns:
      The created shader program. Non-null, but it may or may not have compiled properly. Check the result using isCompiled() function.
    • createVertShader

      @Deprecated public static int createVertShader(String fileName)
      Deprecated.
      Creates a vertex shader unit. Deprecated: Use ShaderProgram.createShaderProgram instead.
    • createFragShader

      @Deprecated public static int createFragShader(String fileName)
      Deprecated.
      Creates a fragment shader unit. Deprecated: Use ShaderProgram.createShaderProgram instead.
    • printLogInfo

      public static void printLogInfo(int obj)
    • getLogInfo

      public static String getLogInfo(int obj)
    • isCompiled

      public boolean isCompiled()
    • destroy

      public void destroy()
    • getShaderID

      public int getShaderID()
    • Start

      public void Start()
    • End

      public void End()
    • setSamplerUnit

      public void setSamplerUnit(String loc, int textureUnit)
    • setValueColor

      public void setValueColor(String loc, int rgba)
    • setValueColorRGB

      public void setValueColorRGB(String loc, int rgb)
    • setValue

      public void setValue(String loc, float val)
    • setValue

      public void setValue(String loc, int val)
    • setValue

      public void setValue(String loc, Vector3 val)
    • setValue

      public void setValue(String loc, Vector2 val)
    • setVector2

      public void setVector2(String loc, float val_x, float val_y)
    • setVector3

      public void setVector3(String loc, float val_x, float val_y, float val_z)
    • setVector4

      public void setVector4(String loc, float val_x, float val_y, float val_z, float val_w)
    • getUniform

      public final ShaderProgram.Uniform getUniform(String loc, int type)
    • getUniform

      public ShaderProgram.Uniform getUniform(String loc, int type, boolean bWarn)
    • setValue

      public void setValue(String loc, org.lwjgl.util.vector.Matrix4f matrix4f)
    • setValue

      public void setValue(String loc, Texture tex, int samplerUnit)
    • setVector2

      public void setVector2(int id, float x, float y)
    • setVector3

      public void setVector3(int id, float x, float y, float z)
    • setVector4

      public void setVector4(int id, float x, float y, float z, float w)