diff options
| author | 2020-06-13 11:21:27 -0400 | |
|---|---|---|
| committer | 2020-06-30 02:40:14 -0400 | |
| commit | 1b31755ba6eb3940d2ec0661337ef21913f9a756 (patch) | |
| tree | 0d83f652d3117d1516e4d9c911dff6e79f58b22c | |
| parent | Merge pull request #4191 from Morph1984/vertex-formats (diff) | |
| download | yuzu-1b31755ba6eb3940d2ec0661337ef21913f9a756.tar.gz yuzu-1b31755ba6eb3940d2ec0661337ef21913f9a756.tar.xz yuzu-1b31755ba6eb3940d2ec0661337ef21913f9a756.zip | |
maxwell_to_gl: Implement MirrorOnceClampOGL using GL_MIRROR_CLAMP_EXT
Like MirrorOnceBorder, this requires the GL_EXT_texture_mirror_clamp extension. This extension is unfortunately not available on Intel's drivers (both Windows proprietary and Linux Mesa). Use GL_MIRROR_CLAMP_TO_EDGE as a fallback if the extension is unavailable.
| -rw-r--r-- | src/video_core/renderer_opengl/maxwell_to_gl.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/maxwell_to_gl.h b/src/video_core/renderer_opengl/maxwell_to_gl.h index 774e70a5b..fe9bd4b5a 100644 --- a/src/video_core/renderer_opengl/maxwell_to_gl.h +++ b/src/video_core/renderer_opengl/maxwell_to_gl.h | |||
| @@ -191,6 +191,12 @@ inline GLenum WrapMode(Tegra::Texture::WrapMode wrap_mode) { | |||
| 191 | } else { | 191 | } else { |
| 192 | return GL_MIRROR_CLAMP_TO_EDGE; | 192 | return GL_MIRROR_CLAMP_TO_EDGE; |
| 193 | } | 193 | } |
| 194 | case Tegra::Texture::WrapMode::MirrorOnceClampOGL: | ||
| 195 | if (GL_EXT_texture_mirror_clamp) { | ||
| 196 | return GL_MIRROR_CLAMP_EXT; | ||
| 197 | } else { | ||
| 198 | return GL_MIRROR_CLAMP_TO_EDGE; | ||
| 199 | } | ||
| 194 | } | 200 | } |
| 195 | UNIMPLEMENTED_MSG("Unimplemented texture wrap mode={}", static_cast<u32>(wrap_mode)); | 201 | UNIMPLEMENTED_MSG("Unimplemented texture wrap mode={}", static_cast<u32>(wrap_mode)); |
| 196 | return GL_REPEAT; | 202 | return GL_REPEAT; |