Maven module :un.engine : engine-opengl :
Class : un.engine.opengl.GLResourceManager
Extends/Implements : -
Subclasses : -

Keep track of currently loaded informations.
It is recommended that any classes loading data on the gpu declare it here.
This allows to keep track of memory usage and simplify detection of memory leaks.
TODO : add textures, vbo, ibo,...etc...
author  Johann Sorel


Variables : -
Functions : GLResourceManager, reserveTextureId, releaseTextureId, registerProgram, aquireProgram, releaseProgram



public void GLResourceManager (GLProcessContext context)


Acquire a texture id.
array[0] = texture id to be used in : gl.glActiveTexture(GL.GL_TEXTURE1);
array[1] = texture index to be used in : gl.glUniform1i(uniformTextureId, 1);
return  int[]
public int[] reserveTextureId ()


Release a texture id.
param  index array[0] or array[1] from reserveTextureId method
public void releaseTextureId (int index)

public void registerProgram (Chars uid, ShaderProgram program)

public ShaderProgram aquireProgram (Chars uid)

public void releaseProgram (Chars uid, GLProcessContext context)