INNER CODE UNIT · Java
bindImageTexture
GiveJavaAChance/PolyrayGameEngine · src/polyray/BindingRegistry.java:11
public static int bindImageTexture(GLTexture texture, int level, boolean layered, int layer, int access) {
return bindImageTexture(texture, level, layered, layer, access, texture.format);
}
public static int bindImageTexture(GLTexture texture, int level, boolean layered, int layer, int access, int format) {
Integer currentBinding = usedImageBindings.get(texture.ID);
if (currentBinding != null) {
return currentBinding;
}
int binding = getNewBinding(usedImageBindings, glGetInteger(GL_MAX_IMAGE_UNITS));
if (binding == -1) {
System.err.println("No available image binding points!");
return -1;
}
glBindImageTexture(binding, texture.ID, level, layered, layer, access, format);
usedImageBindings.put(texture.ID, binding);
return binding;
}