Vulkan: Support full resolution frame dumping
This commit is contained in:
parent
adc22a5e20
commit
1c1a686f63
|
@ -708,13 +708,7 @@ bool Renderer::DrawFrameDump(const EFBRectangle& source_rect, u32 xfb_addr,
|
||||||
const XFBSourceBase* const* xfb_sources, u32 xfb_count, u32 fb_width,
|
const XFBSourceBase* const* xfb_sources, u32 xfb_count, u32 fb_width,
|
||||||
u32 fb_stride, u32 fb_height, u64 ticks)
|
u32 fb_stride, u32 fb_height, u64 ticks)
|
||||||
{
|
{
|
||||||
// Draw the screenshot to an image containing only the active screen area, removing any
|
TargetRectangle target_rect = CalculateFrameDumpDrawRectangle();
|
||||||
// borders as a result of the game rendering in a different aspect ratio.
|
|
||||||
TargetRectangle target_rect = GetTargetRectangle();
|
|
||||||
target_rect.right = target_rect.GetWidth();
|
|
||||||
target_rect.bottom = target_rect.GetHeight();
|
|
||||||
target_rect.left = 0;
|
|
||||||
target_rect.top = 0;
|
|
||||||
u32 width = std::max(1u, static_cast<u32>(target_rect.GetWidth()));
|
u32 width = std::max(1u, static_cast<u32>(target_rect.GetWidth()));
|
||||||
u32 height = std::max(1u, static_cast<u32>(target_rect.GetHeight()));
|
u32 height = std::max(1u, static_cast<u32>(target_rect.GetHeight()));
|
||||||
if (!ResizeFrameDumpBuffer(width, height))
|
if (!ResizeFrameDumpBuffer(width, height))
|
||||||
|
|
|
@ -233,15 +233,15 @@ void VulkanContext::PopulateBackendInfo(VideoConfig* config)
|
||||||
config->backend_info.bSupportsPaletteConversion = true; // Assumed support.
|
config->backend_info.bSupportsPaletteConversion = true; // Assumed support.
|
||||||
config->backend_info.bSupportsClipControl = true; // Assumed support.
|
config->backend_info.bSupportsClipControl = true; // Assumed support.
|
||||||
config->backend_info.bSupportsMultithreading = true; // Assumed support.
|
config->backend_info.bSupportsMultithreading = true; // Assumed support.
|
||||||
config->backend_info.bSupportsInternalResolutionFrameDumps = false; // No support yet.
|
config->backend_info.bSupportsInternalResolutionFrameDumps = true; // Assumed support.
|
||||||
config->backend_info.bSupportsPostProcessing = false; // No support yet.
|
config->backend_info.bSupportsPostProcessing = false; // No support yet.
|
||||||
config->backend_info.bSupportsDualSourceBlend = false; // Dependent on features.
|
config->backend_info.bSupportsDualSourceBlend = false; // Dependent on features.
|
||||||
config->backend_info.bSupportsGeometryShaders = false; // Dependent on features.
|
config->backend_info.bSupportsGeometryShaders = false; // Dependent on features.
|
||||||
config->backend_info.bSupportsGSInstancing = false; // Dependent on features.
|
config->backend_info.bSupportsGSInstancing = false; // Dependent on features.
|
||||||
config->backend_info.bSupportsBBox = false; // Dependent on features.
|
config->backend_info.bSupportsBBox = false; // Dependent on features.
|
||||||
config->backend_info.bSupportsSSAA = false; // Dependent on features.
|
config->backend_info.bSupportsSSAA = false; // Dependent on features.
|
||||||
config->backend_info.bSupportsDepthClamp = false; // Dependent on features.
|
config->backend_info.bSupportsDepthClamp = false; // Dependent on features.
|
||||||
config->backend_info.bSupportsReversedDepthRange = false; // No support yet due to driver bugs.
|
config->backend_info.bSupportsReversedDepthRange = false; // No support yet due to driver bugs.
|
||||||
}
|
}
|
||||||
|
|
||||||
void VulkanContext::PopulateBackendInfoAdapters(VideoConfig* config, const GPUList& gpu_list)
|
void VulkanContext::PopulateBackendInfoAdapters(VideoConfig* config, const GPUList& gpu_list)
|
||||||
|
|
Loading…
Reference in New Issue