summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.cpp32
1 files changed, 13 insertions, 19 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index 168288088..e038686ad 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -118,7 +118,7 @@ RasterizerOpenGL::RasterizerOpenGL(Core::Frontend::EmuWindow& window, Core::Syst
118 118
119 glGetIntegerv(GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT, &uniform_buffer_alignment); 119 glGetIntegerv(GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT, &uniform_buffer_alignment);
120 120
121 LOG_CRITICAL(Render_OpenGL, "Sync fixed function OpenGL state here!"); 121 LOG_DEBUG(Render_OpenGL, "Sync fixed function OpenGL state here");
122 CheckExtensions(); 122 CheckExtensions();
123} 123}
124 124
@@ -177,7 +177,7 @@ GLuint RasterizerOpenGL::SetupVertexFormat() {
177 continue; 177 continue;
178 178
179 const auto& buffer = regs.vertex_array[attrib.buffer]; 179 const auto& buffer = regs.vertex_array[attrib.buffer];
180 LOG_TRACE(HW_GPU, 180 LOG_TRACE(Render_OpenGL,
181 "vertex attrib {}, count={}, size={}, type={}, offset={}, normalize={}", 181 "vertex attrib {}, count={}, size={}, type={}, offset={}, normalize={}",
182 index, attrib.ComponentCount(), attrib.SizeString(), attrib.TypeString(), 182 index, attrib.ComponentCount(), attrib.SizeString(), attrib.TypeString(),
183 attrib.offset.Value(), attrib.IsNormalized()); 183 attrib.offset.Value(), attrib.IsNormalized());
@@ -343,9 +343,8 @@ void RasterizerOpenGL::SetupShaders(GLenum primitive_mode) {
343 shader_program_manager->UseProgrammableFragmentShader(program_handle); 343 shader_program_manager->UseProgrammableFragmentShader(program_handle);
344 break; 344 break;
345 default: 345 default:
346 LOG_CRITICAL(HW_GPU, "Unimplemented shader index={}, enable={}, offset=0x{:08X}", index, 346 UNIMPLEMENTED_MSG("Unimplemented shader index={}, enable={}, offset=0x{:08X}", index,
347 shader_config.enable.Value(), shader_config.offset); 347 shader_config.enable.Value(), shader_config.offset);
348 UNREACHABLE();
349 } 348 }
350 349
351 const auto stage_enum = static_cast<Maxwell::ShaderStage>(stage); 350 const auto stage_enum = static_cast<Maxwell::ShaderStage>(stage);
@@ -793,7 +792,10 @@ bool RasterizerOpenGL::AccelerateDisplay(const Tegra::FramebufferConfig& config,
793 VideoCore::Surface::PixelFormatFromGPUPixelFormat(config.pixel_format)}; 792 VideoCore::Surface::PixelFormatFromGPUPixelFormat(config.pixel_format)};
794 ASSERT_MSG(params.width == config.width, "Framebuffer width is different"); 793 ASSERT_MSG(params.width == config.width, "Framebuffer width is different");
795 ASSERT_MSG(params.height == config.height, "Framebuffer height is different"); 794 ASSERT_MSG(params.height == config.height, "Framebuffer height is different");
796 ASSERT_MSG(params.pixel_format == pixel_format, "Framebuffer pixel_format is different"); 795
796 if (params.pixel_format != pixel_format) {
797 LOG_WARNING(Render_OpenGL, "Framebuffer pixel_format is different");
798 }
797 799
798 screen_info.display_texture = surface->Texture().handle; 800 screen_info.display_texture = surface->Texture().handle;
799 801
@@ -939,8 +941,8 @@ void RasterizerOpenGL::SetupConstBuffers(Tegra::Engines::Maxwell3D::Regs::Shader
939 size = buffer.size; 941 size = buffer.size;
940 942
941 if (size > MaxConstbufferSize) { 943 if (size > MaxConstbufferSize) {
942 LOG_CRITICAL(HW_GPU, "indirect constbuffer size {} exceeds maximum {}", size, 944 LOG_WARNING(Render_OpenGL, "Indirect constbuffer size {} exceeds maximum {}", size,
943 MaxConstbufferSize); 945 MaxConstbufferSize);
944 size = MaxConstbufferSize; 946 size = MaxConstbufferSize;
945 } 947 }
946 } else { 948 } else {
@@ -1235,11 +1237,7 @@ void RasterizerOpenGL::SyncScissorTest(OpenGLState& current_state) {
1235 1237
1236void RasterizerOpenGL::SyncTransformFeedback() { 1238void RasterizerOpenGL::SyncTransformFeedback() {
1237 const auto& regs = Core::System::GetInstance().GPU().Maxwell3D().regs; 1239 const auto& regs = Core::System::GetInstance().GPU().Maxwell3D().regs;
1238 1240 UNIMPLEMENTED_IF_MSG(regs.tfb_enabled != 0, "Transform feedbacks are not implemented");
1239 if (regs.tfb_enabled != 0) {
1240 LOG_CRITICAL(Render_OpenGL, "Transform feedbacks are not implemented");
1241 UNREACHABLE();
1242 }
1243} 1241}
1244 1242
1245void RasterizerOpenGL::SyncPointState() { 1243void RasterizerOpenGL::SyncPointState() {
@@ -1259,12 +1257,8 @@ void RasterizerOpenGL::SyncPolygonOffset() {
1259 1257
1260void RasterizerOpenGL::CheckAlphaTests() { 1258void RasterizerOpenGL::CheckAlphaTests() {
1261 const auto& regs = Core::System::GetInstance().GPU().Maxwell3D().regs; 1259 const auto& regs = Core::System::GetInstance().GPU().Maxwell3D().regs;
1262 1260 UNIMPLEMENTED_IF_MSG(regs.alpha_test_enabled != 0 && regs.rt_control.count > 1,
1263 if (regs.alpha_test_enabled != 0 && regs.rt_control.count > 1) { 1261 "Alpha Testing is enabled with more than one rendertarget");
1264 LOG_CRITICAL(Render_OpenGL, "Alpha Testing is enabled with Multiple Render Targets, "
1265 "this behavior is undefined.");
1266 UNREACHABLE();
1267 }
1268} 1262}
1269 1263
1270} // namespace OpenGL 1264} // namespace OpenGL