summaryrefslogtreecommitdiff
path: root/Source/Plugins/Plugin_VideoOGL/Src/ProgramShaderCache.cpp
diff options
context:
space:
mode:
authorShawn Hoffman <godisgovernment@gmail.com>2012-01-18 10:22:03 -0800
committerShawn Hoffman <godisgovernment@gmail.com>2012-01-18 10:22:03 -0800
commitf57f654b5997e7525f64a6241b84c6a7b13b21cf (patch)
treef8af728b69833ce711a60bc149fcfff7fb4b1a7e /Source/Plugins/Plugin_VideoOGL/Src/ProgramShaderCache.cpp
parentd355ad70554ff2655b1e12a83663cd43f8483320 (diff)
set ProgramShaderCache program format correctly.
Diffstat (limited to 'Source/Plugins/Plugin_VideoOGL/Src/ProgramShaderCache.cpp')
-rw-r--r--Source/Plugins/Plugin_VideoOGL/Src/ProgramShaderCache.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/Plugins/Plugin_VideoOGL/Src/ProgramShaderCache.cpp b/Source/Plugins/Plugin_VideoOGL/Src/ProgramShaderCache.cpp
index b178157a89..8f3378dca8 100644
--- a/Source/Plugins/Plugin_VideoOGL/Src/ProgramShaderCache.cpp
+++ b/Source/Plugins/Plugin_VideoOGL/Src/ProgramShaderCache.cpp
@@ -29,7 +29,7 @@ GLintptr ProgramShaderCache::s_vs_data_offset;
LinearDiskCache<ProgramShaderCache::ShaderUID, u8> g_program_disk_cache;
GLenum ProgramFormat;
-GLuint ProgramShaderCache::PCacheEntry::prog_format = ProgramShaderCache::PCacheEntry::SetProgramFormat();
+GLuint ProgramShaderCache::PCacheEntry::prog_format = 0;
std::pair<u32, u32> ProgramShaderCache::CurrentShaderProgram;
const char *UniformNames[NUM_UNIFORMS] =
@@ -215,9 +215,12 @@ void ProgramShaderCache::Init(void)
// Read our shader cache, only if supported
if (g_ActiveConfig.backend_info.bSupportsGLSLCache)
{
+ PCacheEntry::prog_format = PCacheEntry::SetProgramFormat();
+
char cache_filename[MAX_PATH];
sprintf(cache_filename, "%sogl-%s-shaders.cache", File::GetUserPath(D_SHADERCACHE_IDX).c_str(),
SConfig::GetInstance().m_LocalCoreStartupParameter.m_strUniqueID.c_str());
+
ProgramShaderCacheInserter inserter;
g_program_disk_cache.OpenAndRead(cache_filename, inserter);
}