mirror of
https://git.eden-emu.dev/eden-emu/eden
synced 2026-02-04 02:51:18 +01:00
fix sgsr with new variant shit
This commit is contained in:
@@ -64,9 +64,9 @@ Layer::Layer(const Device& device_, MemoryAllocator& memory_allocator_, Schedule
|
||||
CreateDescriptorPool();
|
||||
CreateDescriptorSets(layout);
|
||||
if (filters.get_scaling_filter() == Settings::ScalingFilter::Fsr) {
|
||||
fsr.emplace(device, memory_allocator, image_count, output_size);
|
||||
sr_filter.emplace<FSR>(device, memory_allocator, image_count, output_size);
|
||||
} else if (filters.get_scaling_filter() == Settings::ScalingFilter::Sgsr) {
|
||||
sgsr.emplace(device, memory_allocator, image_count, output_size);
|
||||
sr_filter.emplace<SGSR>(device, memory_allocator, image_count, output_size);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -117,10 +117,10 @@ void Layer::ConfigureDraw(PresentPushConstants* out_push_constants,
|
||||
.height = scaled_height,
|
||||
};
|
||||
|
||||
if (fsr) {
|
||||
if (auto* fsr = std::get_if(&sr_filter)) {
|
||||
source_image_view = fsr->Draw(scheduler, image_index, source_image, source_image_view, render_extent, crop_rect);
|
||||
crop_rect = {0, 0, 1, 1};
|
||||
} else if (sgsr) {
|
||||
} else if (auto* sgsr = std::get_if(&sr_filter)) {
|
||||
source_image_view = sgsr->Draw(scheduler, image_index, source_image, source_image_view, render_extent, crop_rect);
|
||||
crop_rect = {0, 0, 1, 1};
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
#include "video_core/host1x/gpu_device_memory_manager.h"
|
||||
#include "video_core/vulkan_common/vulkan_wrapper.h"
|
||||
#include "video_core/renderer_vulkan/present/fsr.h"
|
||||
#include "video_core/renderer_vulkan/present/sgsr.h"
|
||||
#include "video_core/renderer_vulkan/present/fxaa.h"
|
||||
#include "video_core/renderer_vulkan/present/smaa.h"
|
||||
|
||||
@@ -95,8 +96,7 @@ private:
|
||||
|
||||
Settings::AntiAliasing anti_alias_setting{};
|
||||
std::variant<std::monostate, FXAA, SMAA> anti_alias{};
|
||||
std::optional<FSR> fsr{};
|
||||
std::unique_ptr<SGSR> sgsr{};
|
||||
std::variant<std::monostate, SGSR, FSR> sr_filter{};
|
||||
std::vector<u64> resource_ticks{};
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user