diff options
| author | 2019-05-21 20:29:41 -0300 | |
|---|---|---|
| committer | 2019-05-30 13:21:01 -0300 | |
| commit | a89cc0bafc2b56aa7b29d34ed460911478fd9efa (patch) | |
| tree | 21f74f0ee2b7e82df2a7dceae270da9c789b21c2 /src | |
| parent | gl_rasterizer: Move alpha testing to the OpenGL pipeline (diff) | |
| download | yuzu-a89cc0bafc2b56aa7b29d34ed460911478fd9efa.tar.gz yuzu-a89cc0bafc2b56aa7b29d34ed460911478fd9efa.tar.xz yuzu-a89cc0bafc2b56aa7b29d34ed460911478fd9efa.zip | |
maxwell_to_gl: Use GL_CLAMP to emulate Clamp wrap mode
Diffstat (limited to 'src')
| -rw-r--r-- | src/video_core/renderer_opengl/maxwell_to_gl.h | 7 | ||||
| -rw-r--r-- | src/video_core/renderer_vulkan/maxwell_to_vk.cpp | 2 | ||||
| -rw-r--r-- | src/video_core/textures/texture.h | 2 |
3 files changed, 4 insertions, 7 deletions
diff --git a/src/video_core/renderer_opengl/maxwell_to_gl.h b/src/video_core/renderer_opengl/maxwell_to_gl.h index e3cabded3..ea77dd211 100644 --- a/src/video_core/renderer_opengl/maxwell_to_gl.h +++ b/src/video_core/renderer_opengl/maxwell_to_gl.h | |||
| @@ -175,11 +175,8 @@ inline GLenum WrapMode(Tegra::Texture::WrapMode wrap_mode) { | |||
| 175 | return GL_CLAMP_TO_EDGE; | 175 | return GL_CLAMP_TO_EDGE; |
| 176 | case Tegra::Texture::WrapMode::Border: | 176 | case Tegra::Texture::WrapMode::Border: |
| 177 | return GL_CLAMP_TO_BORDER; | 177 | return GL_CLAMP_TO_BORDER; |
| 178 | case Tegra::Texture::WrapMode::ClampOGL: | 178 | case Tegra::Texture::WrapMode::Clamp: |
| 179 | // TODO(Subv): GL_CLAMP was removed as of OpenGL 3.1, to implement GL_CLAMP, we can use | 179 | return GL_CLAMP; |
| 180 | // GL_CLAMP_TO_BORDER to get the border color of the texture, and then sample the edge to | ||
| 181 | // manually mix them. However the shader part of this is not yet implemented. | ||
| 182 | return GL_CLAMP_TO_BORDER; | ||
| 183 | case Tegra::Texture::WrapMode::MirrorOnceClampToEdge: | 180 | case Tegra::Texture::WrapMode::MirrorOnceClampToEdge: |
| 184 | return GL_MIRROR_CLAMP_TO_EDGE; | 181 | return GL_MIRROR_CLAMP_TO_EDGE; |
| 185 | case Tegra::Texture::WrapMode::MirrorOnceBorder: | 182 | case Tegra::Texture::WrapMode::MirrorOnceBorder: |
diff --git a/src/video_core/renderer_vulkan/maxwell_to_vk.cpp b/src/video_core/renderer_vulkan/maxwell_to_vk.cpp index 9fe1e3280..0bbbf6851 100644 --- a/src/video_core/renderer_vulkan/maxwell_to_vk.cpp +++ b/src/video_core/renderer_vulkan/maxwell_to_vk.cpp | |||
| @@ -52,7 +52,7 @@ vk::SamplerAddressMode WrapMode(Tegra::Texture::WrapMode wrap_mode) { | |||
| 52 | return vk::SamplerAddressMode::eClampToEdge; | 52 | return vk::SamplerAddressMode::eClampToEdge; |
| 53 | case Tegra::Texture::WrapMode::Border: | 53 | case Tegra::Texture::WrapMode::Border: |
| 54 | return vk::SamplerAddressMode::eClampToBorder; | 54 | return vk::SamplerAddressMode::eClampToBorder; |
| 55 | case Tegra::Texture::WrapMode::ClampOGL: | 55 | case Tegra::Texture::WrapMode::Clamp: |
| 56 | // TODO(Rodrigo): GL_CLAMP was removed as of OpenGL 3.1, to implement GL_CLAMP, we can use | 56 | // TODO(Rodrigo): GL_CLAMP was removed as of OpenGL 3.1, to implement GL_CLAMP, we can use |
| 57 | // eClampToBorder to get the border color of the texture, and then sample the edge to | 57 | // eClampToBorder to get the border color of the texture, and then sample the edge to |
| 58 | // manually mix them. However the shader part of this is not yet implemented. | 58 | // manually mix them. However the shader part of this is not yet implemented. |
diff --git a/src/video_core/textures/texture.h b/src/video_core/textures/texture.h index bea0d5bc2..219bfd559 100644 --- a/src/video_core/textures/texture.h +++ b/src/video_core/textures/texture.h | |||
| @@ -251,7 +251,7 @@ enum class WrapMode : u32 { | |||
| 251 | Mirror = 1, | 251 | Mirror = 1, |
| 252 | ClampToEdge = 2, | 252 | ClampToEdge = 2, |
| 253 | Border = 3, | 253 | Border = 3, |
| 254 | ClampOGL = 4, | 254 | Clamp = 4, |
| 255 | MirrorOnceClampToEdge = 5, | 255 | MirrorOnceClampToEdge = 5, |
| 256 | MirrorOnceBorder = 6, | 256 | MirrorOnceBorder = 6, |
| 257 | MirrorOnceClampOGL = 7, | 257 | MirrorOnceClampOGL = 7, |