free opengl resources
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
package chess.view.DDDrender.shader;
|
||||
|
||||
import java.io.Closeable;
|
||||
import java.io.IOException;
|
||||
import java.nio.FloatBuffer;
|
||||
import java.nio.IntBuffer;
|
||||
|
||||
@@ -9,7 +11,7 @@ import org.lwjgl.BufferUtils;
|
||||
import org.lwjgl.opengl.GL30;
|
||||
import org.lwjgl.system.MemoryStack;
|
||||
|
||||
public abstract class ShaderProgram {
|
||||
public abstract class ShaderProgram implements Closeable {
|
||||
private int programId;
|
||||
private int vertexShaderId;
|
||||
private int fragmentShaderId;
|
||||
@@ -91,4 +93,11 @@ public abstract class ShaderProgram {
|
||||
GL30.glUniformMatrix4fv(location, false, buffer);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void close() throws IOException {
|
||||
GL30.glDeleteShader(vertexShaderId);
|
||||
GL30.glDeleteShader(fragmentShaderId);
|
||||
GL30.glDeleteProgram(programId);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user