diff options
| author | Stenzek <stenzek@gmail.com> | 2017-07-20 15:25:29 +1000 |
|---|---|---|
| committer | Stenzek <stenzek@gmail.com> | 2017-07-30 17:43:59 +1000 |
| commit | cd502990fa63e63c727d99ebf0defb3cf40583f9 (patch) | |
| tree | 0c22866328492d2e5fc34cedd495d71b032e679a /Source/Core/VideoBackends/OGL/VertexManager.cpp | |
| parent | 901bf9c257347c91101ca25e74037684dd519968 (diff) | |
OGL: Uber shader support
Diffstat (limited to 'Source/Core/VideoBackends/OGL/VertexManager.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/OGL/VertexManager.cpp | 31 |
1 files changed, 1 insertions, 30 deletions
diff --git a/Source/Core/VideoBackends/OGL/VertexManager.cpp b/Source/Core/VideoBackends/OGL/VertexManager.cpp index eb7ce04c92..9f8d87eceb 100644 --- a/Source/Core/VideoBackends/OGL/VertexManager.cpp +++ b/Source/Core/VideoBackends/OGL/VertexManager.cpp @@ -53,8 +53,6 @@ void VertexManager::CreateDeviceObjects() s_indexBuffer = StreamBuffer::Create(GL_ELEMENT_ARRAY_BUFFER, MAX_IBUFFER_SIZE); m_index_buffers = s_indexBuffer->m_buffer; - - m_last_vao = 0; } void VertexManager::DestroyDeviceObjects() @@ -142,22 +140,13 @@ void VertexManager::vFlush() GLVertexFormat* nativeVertexFmt = (GLVertexFormat*)VertexLoaderManager::GetCurrentVertexFormat(); u32 stride = nativeVertexFmt->GetVertexStride(); - if (m_last_vao != nativeVertexFmt->VAO) - { - glBindVertexArray(nativeVertexFmt->VAO); - m_last_vao = nativeVertexFmt->VAO; - } + ProgramShaderCache::SetShader(m_current_primitive_type, nativeVertexFmt); PrepareDrawBuffers(stride); - ProgramShaderCache::SetShader(m_current_primitive_type); - // upload global constants ProgramShaderCache::UploadConstants(); - // setup the pointers - nativeVertexFmt->SetupVertexPointers(); - if (::BoundingBox::active && !g_Config.BBoxUseFragmentShaderImplementation()) { glEnable(GL_STENCIL_TEST); @@ -171,24 +160,6 @@ void VertexManager::vFlush() glDisable(GL_STENCIL_TEST); } -#if defined(_DEBUG) || defined(DEBUGFAST) - if (g_ActiveConfig.iLog & CONF_SAVESHADERS) - { - // save the shaders - ProgramShaderCache::PCacheEntry prog = ProgramShaderCache::GetShaderProgram(); - std::string filename = StringFromFormat( - "%sps%.3d.txt", File::GetUserPath(D_DUMPFRAMES_IDX).c_str(), g_ActiveConfig.iSaveTargetId); - std::ofstream fps; - File::OpenFStream(fps, filename, std::ios_base::out); - fps << prog.shader.strpprog; - - filename = StringFromFormat("%svs%.3d.txt", File::GetUserPath(D_DUMPFRAMES_IDX).c_str(), - g_ActiveConfig.iSaveTargetId); - std::ofstream fvs; - File::OpenFStream(fvs, filename, std::ios_base::out); - fvs << prog.shader.strvprog; - } -#endif g_Config.iSaveTargetId++; ClearEFBCache(); } |
