void GSShaderOGL::SetupRessources() { if (!GLLoader::found_GL_ARB_bindless_texture) return; if (GLState::dirty_ressources) { GLState::dirty_ressources = false; if (GLLoader::found_GL_ARB_separate_shader_objects) { gl_ProgramUniformHandleui64vARB(GLState::ps, 0, 1, &GLState::tex_handle[0]); if (GLState::tex_handle[1]) gl_ProgramUniformHandleui64vARB(GLState::ps, 1, 1, &GLState::tex_handle[1]); } else { gl_UniformHandleui64vARB(0, 1, &GLState::tex_handle[0]); if (GLState::tex_handle[1]) gl_UniformHandleui64vARB(1, 1, &GLState::tex_handle[1]); } } }
void GSShaderOGL::SetupRessources() { #ifndef ENABLE_GLES if (!GLLoader::found_GL_ARB_bindless_texture) return; if (GLState::dirty_ressources) { GLState::dirty_ressources = false; // FIXME count ! // FIXME location ! GLuint count = (GLState::tex_handle[1]) ? 2 : 1; if (GLLoader::found_GL_ARB_separate_shader_objects) { gl_ProgramUniformHandleui64vARB(GLState::ps, 0, count, GLState::tex_handle); } else { gl_UniformHandleui64vARB(0, count, GLState::tex_handle); } } #endif }