//-------------------------------------------------------------- static void retainProgram(GLuint id){ if(id==0) return; if(getProgramIds().find(id)!=getProgramIds().end()){ getProgramIds()[id]++; }else{ getProgramIds()[id]=1; } }
//-------------------------------------------------------------- static void releaseProgram(GLuint id){ if(getProgramIds().find(id)!=getProgramIds().end()){ getProgramIds()[id]--; if(getProgramIds()[id]==0){ glDeleteProgram(id); getProgramIds().erase(id); } }else{ ofLogWarning("ofShader") << "releaseProgram(): something's wrong here, releasing unknown program id " << id; glDeleteProgram(id); } }
//-------------------------------------------------------------- static void releaseProgram(GLuint id){ if(getProgramIds().find(id)!=getProgramIds().end()){ getProgramIds()[id]--; if(getProgramIds()[id]==0){ glDeleteProgram(id); getProgramIds().erase(id); } }else{ ofLog(OF_LOG_WARNING,"ofShader: releasing program not found, this shouldn't be happening releasing anyway"); glDeleteProgram(id); } }