diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2019-01-07 03:02:27 +0100 |
---|---|---|
committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2019-01-30 23:10:35 +0100 |
commit | 704744bb72972f99fa992e286b3de5967b48af37 (patch) | |
tree | d3e7f51187daf4bba5f93df6cb72503961d210d0 /src/video_core/renderer_opengl/gl_rasterizer.cpp | |
parent | gl_state: Use DSA and multi bind to update texture bindings (diff) | |
download | yuzu-704744bb72972f99fa992e286b3de5967b48af37.tar yuzu-704744bb72972f99fa992e286b3de5967b48af37.tar.gz yuzu-704744bb72972f99fa992e286b3de5967b48af37.tar.bz2 yuzu-704744bb72972f99fa992e286b3de5967b48af37.tar.lz yuzu-704744bb72972f99fa992e286b3de5967b48af37.tar.xz yuzu-704744bb72972f99fa992e286b3de5967b48af37.tar.zst yuzu-704744bb72972f99fa992e286b3de5967b48af37.zip |
Diffstat (limited to '')
-rw-r--r-- | src/video_core/renderer_opengl/gl_rasterizer.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp index ee313cb2f..79d16d1f3 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.cpp +++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp @@ -1022,11 +1022,11 @@ void RasterizerOpenGL::SetupTextures(Maxwell::ShaderStage stage, const Shader& s if (surface != nullptr) { unit.texture = entry.IsArray() ? surface->TextureLayer().handle : surface->Texture().handle; - unit.target = entry.IsArray() ? surface->TargetLayer() : surface->Target(); - unit.swizzle.r = MaxwellToGL::SwizzleSource(texture.tic.x_source); - unit.swizzle.g = MaxwellToGL::SwizzleSource(texture.tic.y_source); - unit.swizzle.b = MaxwellToGL::SwizzleSource(texture.tic.z_source); - unit.swizzle.a = MaxwellToGL::SwizzleSource(texture.tic.w_source); + const GLenum target = entry.IsArray() ? surface->TargetLayer() : surface->Target(); + surface->UpdateSwizzle(texture.tic.x_source, texture.tic.y_source, texture.tic.z_source, + texture.tic.w_source); + unit.texture = handle; + unit.target = target; } else { // Can occur when texture addr is null or its memory is unmapped/invalid unit.texture = 0; |