diff options
Diffstat (limited to 'src/video_core/renderer_opengl')
-rw-r--r-- | src/video_core/renderer_opengl/gl_texture_cache.cpp | 16 | ||||
-rw-r--r-- | src/video_core/renderer_opengl/gl_texture_cache.h | 8 |
2 files changed, 24 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_texture_cache.cpp b/src/video_core/renderer_opengl/gl_texture_cache.cpp index 8c3ca3d82..1e594838f 100644 --- a/src/video_core/renderer_opengl/gl_texture_cache.cpp +++ b/src/video_core/renderer_opengl/gl_texture_cache.cpp @@ -849,6 +849,22 @@ void Image::CopyImageToBuffer(const VideoCommon::BufferImageCopy& copy, size_t b } } +void Image::ScaleUp() { + if (True(flags & ImageFlagBits::Rescaled)) { + return; + } + flags |= ImageFlagBits::Rescaled; + UNIMPLEMENTED(); +} + +void Image::ScaleDown() { + if (False(flags & ImageFlagBits::Rescaled)) { + return; + } + flags &= ~ImageFlagBits::Rescaled; + UNIMPLEMENTED(); +} + ImageView::ImageView(TextureCacheRuntime& runtime, const VideoCommon::ImageViewInfo& info, ImageId image_id_, Image& image) : VideoCommon::ImageViewBase{info, image.info, image_id_}, views{runtime.null_image_views} { diff --git a/src/video_core/renderer_opengl/gl_texture_cache.h b/src/video_core/renderer_opengl/gl_texture_cache.h index 1ca2c90be..58b36494b 100644 --- a/src/video_core/renderer_opengl/gl_texture_cache.h +++ b/src/video_core/renderer_opengl/gl_texture_cache.h @@ -72,6 +72,8 @@ public: StateTracker& state_tracker); ~TextureCacheRuntime(); + void Init() {} + void Finish(); ImageBufferMap UploadStagingBuffer(size_t size); @@ -110,6 +112,8 @@ public: bool HasNativeASTC() const noexcept; + void TickFrame() {} + private: struct StagingBuffers { explicit StagingBuffers(GLenum storage_flags_, GLenum map_flags_); @@ -185,6 +189,10 @@ public: return gl_type; } + bool ScaleUp(); + + bool ScaleDown(); + private: void CopyBufferToImage(const VideoCommon::BufferImageCopy& copy, size_t buffer_offset); |