diff options
author | FengChen <vonchenplus@gmail.com> | 2022-08-10 04:10:32 +0200 |
---|---|---|
committer | FengChen <vonchenplus@gmail.com> | 2022-08-25 06:45:58 +0200 |
commit | b2a6dde4380a5526e9d936f92a9e3d6ad9393bfa (patch) | |
tree | 0606caece955ac68899b71325b769a174af2f9f4 /src/video_core/renderer_opengl | |
parent | Merge pull request #8734 from liamwhite/bors-is-my-best-friend (diff) | |
download | yuzu-b2a6dde4380a5526e9d936f92a9e3d6ad9393bfa.tar yuzu-b2a6dde4380a5526e9d936f92a9e3d6ad9393bfa.tar.gz yuzu-b2a6dde4380a5526e9d936f92a9e3d6ad9393bfa.tar.bz2 yuzu-b2a6dde4380a5526e9d936f92a9e3d6ad9393bfa.tar.lz yuzu-b2a6dde4380a5526e9d936f92a9e3d6ad9393bfa.tar.xz yuzu-b2a6dde4380a5526e9d936f92a9e3d6ad9393bfa.tar.zst yuzu-b2a6dde4380a5526e9d936f92a9e3d6ad9393bfa.zip |
Diffstat (limited to 'src/video_core/renderer_opengl')
-rw-r--r-- | src/video_core/renderer_opengl/gl_texture_cache.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/video_core/renderer_opengl/gl_texture_cache.cpp b/src/video_core/renderer_opengl/gl_texture_cache.cpp index 8c0fffc67..99cd11d1e 100644 --- a/src/video_core/renderer_opengl/gl_texture_cache.cpp +++ b/src/video_core/renderer_opengl/gl_texture_cache.cpp @@ -93,6 +93,7 @@ GLenum ImageTarget(Shader::TextureType type, int num_samples = 1) { case Shader::TextureType::Color1D: return GL_TEXTURE_1D; case Shader::TextureType::Color2D: + case Shader::TextureType::Color2DRect: return is_multisampled ? GL_TEXTURE_2D_MULTISAMPLE : GL_TEXTURE_2D; case Shader::TextureType::ColorCube: return GL_TEXTURE_CUBE_MAP; @@ -502,6 +503,7 @@ TextureCacheRuntime::TextureCacheRuntime(const Device& device_, ProgramManager& set_view(Shader::TextureType::ColorArray1D, null_image_1d_array.handle); set_view(Shader::TextureType::ColorArray2D, null_image_view_2d_array.handle); set_view(Shader::TextureType::ColorArrayCube, null_image_cube_array.handle); + set_view(Shader::TextureType::Color2DRect, null_image_view_2d.handle); if (resolution.active) { for (size_t i = 0; i < rescale_draw_fbos.size(); ++i) { @@ -1110,6 +1112,7 @@ ImageView::ImageView(TextureCacheRuntime& runtime, const VideoCommon::ImageViewI flat_range.extent.layers = 1; [[fallthrough]]; case ImageViewType::e2D: + case ImageViewType::Rect: if (True(flags & VideoCommon::ImageViewFlagBits::Slice)) { // 2D and 2D array views on a 3D textures are used exclusively for render targets ASSERT(info.range.extent.levels == 1); @@ -1135,9 +1138,6 @@ ImageView::ImageView(TextureCacheRuntime& runtime, const VideoCommon::ImageViewI SetupView(Shader::TextureType::ColorCube); SetupView(Shader::TextureType::ColorArrayCube); break; - case ImageViewType::Rect: - UNIMPLEMENTED(); - break; case ImageViewType::Buffer: ASSERT(false); break; @@ -1150,6 +1150,7 @@ ImageView::ImageView(TextureCacheRuntime& runtime, const VideoCommon::ImageViewI default_handle = Handle(Shader::TextureType::ColorArray1D); break; case ImageViewType::e2D: + case ImageViewType::Rect: default_handle = Handle(Shader::TextureType::Color2D); break; case ImageViewType::e2DArray: @@ -1210,6 +1211,7 @@ GLuint ImageView::MakeView(Shader::TextureType view_type, GLenum view_format) { case Shader::TextureType::Color1D: case Shader::TextureType::Color2D: case Shader::TextureType::ColorCube: + case Shader::TextureType::Color2DRect: view_range = flat_range; break; case Shader::TextureType::ColorArray1D: @@ -1250,7 +1252,6 @@ Sampler::Sampler(TextureCacheRuntime& runtime, const TSCEntry& config) { const GLint seamless = config.cubemap_interface_filtering ? GL_TRUE : GL_FALSE; UNIMPLEMENTED_IF(config.cubemap_anisotropy != 1); - UNIMPLEMENTED_IF(config.float_coord_normalization != 0); sampler.Create(); const GLuint handle = sampler.handle; |