29 lines
604 B
Java
29 lines
604 B
Java
package com.danitheskunk.skunkworks.backends.gl;
|
|
|
|
import static org.lwjgl.opengl.GL46.*;
|
|
|
|
public class Shader {
|
|
private final int shader;
|
|
private final int type;
|
|
|
|
public Shader(String source, int type) {
|
|
this.type = type;
|
|
|
|
shader = glCreateShader(type);
|
|
glShaderSource(shader, source);
|
|
glCompileShader(shader);
|
|
|
|
int[] ret = {0};
|
|
glGetShaderiv(shader, GL_COMPILE_STATUS, ret);
|
|
if(ret[0] == GL_FALSE) {
|
|
var errmsg = glGetShaderInfoLog(shader);
|
|
glDeleteShader(shader);
|
|
throw new RuntimeException("Shader error:\n" + errmsg);
|
|
}
|
|
}
|
|
|
|
public int getShader() {
|
|
return shader;
|
|
}
|
|
}
|