Merge pull request #809 from lioncash/rasterizer
gl_rasterizer: Minor cleanup
This commit is contained in:
		| @@ -5,6 +5,7 @@ | ||||
| #include <algorithm> | ||||
| #include <memory> | ||||
| #include <string> | ||||
| #include <string_view> | ||||
| #include <tuple> | ||||
| #include <utility> | ||||
| #include <glad/glad.h> | ||||
| @@ -37,11 +38,6 @@ MICROPROFILE_DEFINE(OpenGL_Blits, "OpenGL", "Blits", MP_RGB(100, 100, 255)); | ||||
| MICROPROFILE_DEFINE(OpenGL_CacheManagement, "OpenGL", "Cache Mgmt", MP_RGB(100, 255, 100)); | ||||
|  | ||||
| RasterizerOpenGL::RasterizerOpenGL() { | ||||
|     has_ARB_buffer_storage = false; | ||||
|     has_ARB_direct_state_access = false; | ||||
|     has_ARB_separate_shader_objects = false; | ||||
|     has_ARB_vertex_attrib_binding = false; | ||||
|  | ||||
|     // Create sampler objects | ||||
|     for (size_t i = 0; i < texture_samplers.size(); ++i) { | ||||
|         texture_samplers[i].Create(); | ||||
| @@ -59,7 +55,8 @@ RasterizerOpenGL::RasterizerOpenGL() { | ||||
|     GLint ext_num; | ||||
|     glGetIntegerv(GL_NUM_EXTENSIONS, &ext_num); | ||||
|     for (GLint i = 0; i < ext_num; i++) { | ||||
|         std::string extension{reinterpret_cast<const char*>(glGetStringi(GL_EXTENSIONS, i))}; | ||||
|         const std::string_view extension{ | ||||
|             reinterpret_cast<const char*>(glGetStringi(GL_EXTENSIONS, i))}; | ||||
|  | ||||
|         if (extension == "GL_ARB_buffer_storage") { | ||||
|             has_ARB_buffer_storage = true; | ||||
| @@ -110,8 +107,6 @@ RasterizerOpenGL::RasterizerOpenGL() { | ||||
|         glBindBufferBase(GL_UNIFORM_BUFFER, index, buffer.handle); | ||||
|     } | ||||
|  | ||||
|     accelerate_draw = AccelDraw::Disabled; | ||||
|  | ||||
|     glEnable(GL_BLEND); | ||||
|  | ||||
|     LOG_CRITICAL(Render_OpenGL, "Sync fixed function OpenGL state here!"); | ||||
| @@ -694,10 +689,12 @@ u32 RasterizerOpenGL::SetupConstBuffers(Maxwell::ShaderStage stage, GLuint progr | ||||
|         glBindBuffer(GL_UNIFORM_BUFFER, 0); | ||||
|  | ||||
|         // Now configure the bindpoint of the buffer inside the shader | ||||
|         std::string buffer_name = used_buffer.GetName(); | ||||
|         GLuint index = glGetProgramResourceIndex(program, GL_UNIFORM_BLOCK, buffer_name.c_str()); | ||||
|         if (index != -1) | ||||
|         const std::string buffer_name = used_buffer.GetName(); | ||||
|         const GLuint index = | ||||
|             glGetProgramResourceIndex(program, GL_UNIFORM_BLOCK, buffer_name.c_str()); | ||||
|         if (index != GL_INVALID_INDEX) { | ||||
|             glUniformBlockBinding(program, index, buffer_draw_state.bindpoint); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     state.Apply(); | ||||
|   | ||||
| @@ -135,10 +135,10 @@ private: | ||||
|     /// Syncs the blend state to match the guest state | ||||
|     void SyncBlendState(); | ||||
|  | ||||
|     bool has_ARB_buffer_storage; | ||||
|     bool has_ARB_direct_state_access; | ||||
|     bool has_ARB_separate_shader_objects; | ||||
|     bool has_ARB_vertex_attrib_binding; | ||||
|     bool has_ARB_buffer_storage = false; | ||||
|     bool has_ARB_direct_state_access = false; | ||||
|     bool has_ARB_separate_shader_objects = false; | ||||
|     bool has_ARB_vertex_attrib_binding = false; | ||||
|  | ||||
|     OpenGLState state; | ||||
|  | ||||
| @@ -167,5 +167,5 @@ private: | ||||
|     void SetupShaders(u8* buffer_ptr, GLintptr buffer_offset); | ||||
|  | ||||
|     enum class AccelDraw { Disabled, Arrays, Indexed }; | ||||
|     AccelDraw accelerate_draw; | ||||
|     AccelDraw accelerate_draw = AccelDraw::Disabled; | ||||
| }; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user