summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
diff options
context:
space:
mode:
authorYuri Kunde Schlesner <yuriks@yuriks.net>2017-01-28 06:47:34 +0100
committerYuri Kunde Schlesner <yuriks@yuriks.net>2017-02-04 22:59:11 +0100
commit23713d5dee8015a73ecab1bf944ebcab908e347c (patch)
tree160bdc8411a899f690e51d055ad1213e19abba5c /src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
parentVideoCore: Split texturing regs from Regs struct (diff)
downloadyuzu-23713d5dee8015a73ecab1bf944ebcab908e347c.tar
yuzu-23713d5dee8015a73ecab1bf944ebcab908e347c.tar.gz
yuzu-23713d5dee8015a73ecab1bf944ebcab908e347c.tar.bz2
yuzu-23713d5dee8015a73ecab1bf944ebcab908e347c.tar.lz
yuzu-23713d5dee8015a73ecab1bf944ebcab908e347c.tar.xz
yuzu-23713d5dee8015a73ecab1bf944ebcab908e347c.tar.zst
yuzu-23713d5dee8015a73ecab1bf944ebcab908e347c.zip
Diffstat (limited to '')
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer_cache.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp b/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
index 6d08d1a67..0818a87b3 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
@@ -525,7 +525,9 @@ CachedSurface* RasterizerCacheOpenGL::GetTextureSurface(
}
std::tuple<CachedSurface*, CachedSurface*, MathUtil::Rectangle<int>>
-RasterizerCacheOpenGL::GetFramebufferSurfaces(const Pica::Regs::FramebufferConfig& config) {
+RasterizerCacheOpenGL::GetFramebufferSurfaces(
+ const Pica::FramebufferRegs::FramebufferConfig& config) {
+
const auto& regs = Pica::g_state.regs;
// Make sur that framebuffers don't overlap if both color and depth are being used
@@ -537,11 +539,12 @@ RasterizerCacheOpenGL::GetFramebufferSurfaces(const Pica::Regs::FramebufferConfi
config.GetColorBufferPhysicalAddress(),
fb_area * GPU::Regs::BytesPerPixel(GPU::Regs::PixelFormat(config.color_format.Value())),
config.GetDepthBufferPhysicalAddress(),
- fb_area * Pica::Regs::BytesPerDepthPixel(config.depth_format));
+ fb_area * Pica::FramebufferRegs::BytesPerDepthPixel(config.depth_format));
bool using_color_fb = config.GetColorBufferPhysicalAddress() != 0;
- bool using_depth_fb = config.GetDepthBufferPhysicalAddress() != 0 &&
- (regs.output_merger.depth_test_enable ||
- regs.output_merger.depth_write_enable || !framebuffers_overlap);
+ bool using_depth_fb =
+ config.GetDepthBufferPhysicalAddress() != 0 &&
+ (regs.framebuffer.output_merger.depth_test_enable ||
+ regs.framebuffer.output_merger.depth_write_enable || !framebuffers_overlap);
if (framebuffers_overlap && using_color_fb && using_depth_fb) {
LOG_CRITICAL(Render_OpenGL, "Color and depth framebuffer memory regions overlap; "