Advertisement
maany

IGLESShaderRenderer mem info

Mar 31st, 2014
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.59 KB | None | 0 0
  1.     public int getFreeMemory() {
  2.         int GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX = 0x9049;
  3.         int VBO_FREE_MEMORY_ATI = 0x87FB;
  4.         int TEXTURE_FREE_MEMORY_ATI= 0x87FC;
  5.         int RENDERBUFFER_FREE_MEMORY_ATI= 0x87FD;
  6.         int[] freeMemory = new int[3];
  7.         if(JmeIosGLES.glGetString(JmeIosGLES.GL_VENDOR).equals("NVIDIA Corporation")){
  8.             JmeIosGLES.glGetIntegerv(GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX, freeMemory, 0);
  9.             return freeMemory[0];
  10.         }
  11.         else if(JmeIosGLES.glGetString(JmeIosGLES.GL_VENDOR).equals("ATI Technologies")) {
  12.             JmeIosGLES.glGetIntegerv(VBO_FREE_MEMORY_ATI, freeMemory,0);
  13.             JmeIosGLES.glGetIntegerv(TEXTURE_FREE_MEMORY_ATI, freeMemory,0);
  14.             JmeIosGLES.glGetIntegerv(RENDERBUFFER_FREE_MEMORY_ATI, freeMemory,0);
  15.             return freeMemory[0]+freeMemory[1]+freeMemory[2];
  16.         }
  17.         else
  18.             throw new UnsupportedOperationException("Cannot retrieve GPU's memory info");
  19.        
  20.     }
  21.  
  22.     public int getMaxMemory() {
  23.         int[] maxMemory = new int[1];
  24.         int GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX  =  0x9048;
  25.         if(JmeIosGLES.glGetString(JmeIosGLES.GL_VENDOR).equals("NVIDIA Corporation")) {
  26.             JmeIosGLES.glGetIntegerv(GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX, maxMemory, 0);
  27.             return maxMemory[0];
  28.         } else if (JmeIosGLES.glGetString(JmeIosGLES.GL_VENDOR).equals("ATI Technologies")){
  29.             return -1;
  30.         } else
  31.             throw new UnsupportedOperationException("Cannot retrieve GPU's memory info");
  32.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement