mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2026-06-03 14:14:59 -06:00
parent
0c3fac6ce0
commit
980919b07b
@ -407,6 +407,13 @@ void FsrPass::ResizeAndInvalidate(u32 width, u32 height) {
|
|||||||
void FsrPass::CreateImages(Img& img) const {
|
void FsrPass::CreateImages(Img& img) const {
|
||||||
img.dirty = false;
|
img.dirty = false;
|
||||||
|
|
||||||
|
// Destroy previous resources before re-creating at new size.
|
||||||
|
// Views first, then images (views reference the images).
|
||||||
|
img.intermediary_image_view.reset();
|
||||||
|
img.output_image_view.reset();
|
||||||
|
img.intermediary_image.Destroy();
|
||||||
|
img.output_image.Destroy();
|
||||||
|
|
||||||
vk::ImageCreateInfo image_create_info{
|
vk::ImageCreateInfo image_create_info{
|
||||||
.imageType = vk::ImageType::e2D,
|
.imageType = vk::ImageType::e2D,
|
||||||
.format = vk::Format::eR16G16B16A16Sfloat,
|
.format = vk::Format::eR16G16B16A16Sfloat,
|
||||||
|
|||||||
@ -82,6 +82,14 @@ UniqueImage::~UniqueImage() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void UniqueImage::Destroy() {
|
||||||
|
if (image) {
|
||||||
|
vmaDestroyImage(allocator, image, allocation);
|
||||||
|
image = vk::Image{};
|
||||||
|
allocation = {};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void UniqueImage::Create(const vk::ImageCreateInfo& image_ci) {
|
void UniqueImage::Create(const vk::ImageCreateInfo& image_ci) {
|
||||||
this->image_ci = image_ci;
|
this->image_ci = image_ci;
|
||||||
ASSERT(!image);
|
ASSERT(!image);
|
||||||
|
|||||||
@ -59,6 +59,8 @@ struct UniqueImage {
|
|||||||
|
|
||||||
void Create(const vk::ImageCreateInfo& image_ci);
|
void Create(const vk::ImageCreateInfo& image_ci);
|
||||||
|
|
||||||
|
void Destroy();
|
||||||
|
|
||||||
operator vk::Image() const {
|
operator vk::Image() const {
|
||||||
return image;
|
return image;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user