VulkanShader_1.21.10-0.0.4-alpha.jar
Download file
package net.vulkanmod.gl;
import it.unimi.dsi.fastutil.ints.Int2ReferenceOpenHashMap;
import net.vulkanmod.vulkan.shader.Pipeline;
public class VkGlProgram {
private static int ID_COUNTER = 1;
private static final Int2ReferenceOpenHashMap<VkGlProgram> map = new Int2ReferenceOpenHashMap();
private static int boundProgramId = 0;
private static VkGlProgram boundProgram;
int id;
Pipeline pipeline;
public static VkGlProgram getBoundProgram() {
return boundProgram;
}
public static VkGlProgram getProgram(int id) {
return (VkGlProgram)map.get(id);
}
public static int genProgramId() {
int id = ID_COUNTER;
map.put(id, new VkGlProgram(id));
++ID_COUNTER;
return id;
}
public static void glUseProgram(int id) {
boundProgramId = id;
boundProgram = (VkGlProgram)map.get(id);
if (id > 0) {
if (boundProgram == null) {
throw new NullPointerException("bound texture is null");
}
}
}
VkGlProgram(int i) {
this.id = i;
}
public void bindPipeline(Pipeline pipeline) {
this.pipeline = pipeline;
}
public Pipeline getPipeline() {
return this.pipeline;
}
}
Download file