Release the resources so the lightmapper can run again
This commit is contained in:
parent
c0c0271c7b
commit
44d830df31
1 changed files with 16 additions and 4 deletions
|
|
@ -33,13 +33,10 @@ void VkLightmap::Raytrace(LevelMesh* level)
|
|||
{
|
||||
mesh = level;
|
||||
|
||||
UpdateAccelStructDescriptors(); // To do: we only need to do this if the accel struct changes.
|
||||
|
||||
UpdateAccelStructDescriptors();
|
||||
CreateAtlasImages();
|
||||
|
||||
UploadUniforms();
|
||||
|
||||
|
||||
for (size_t pageIndex = 0; pageIndex < atlasImages.size(); pageIndex++)
|
||||
{
|
||||
RenderAtlasImage(pageIndex);
|
||||
|
|
@ -49,6 +46,21 @@ void VkLightmap::Raytrace(LevelMesh* level)
|
|||
{
|
||||
ResolveAtlasImage(pageIndex);
|
||||
}
|
||||
|
||||
for (LightmapImage& image : atlasImages)
|
||||
{
|
||||
fb->GetCommands()->TransferDeleteList->Add(std::move(image.raytrace.Image));
|
||||
fb->GetCommands()->TransferDeleteList->Add(std::move(image.raytrace.View));
|
||||
fb->GetCommands()->TransferDeleteList->Add(std::move(image.raytrace.Framebuffer));
|
||||
fb->GetCommands()->TransferDeleteList->Add(std::move(image.resolve.Image));
|
||||
fb->GetCommands()->TransferDeleteList->Add(std::move(image.resolve.View));
|
||||
fb->GetCommands()->TransferDeleteList->Add(std::move(image.resolve.Framebuffer));
|
||||
}
|
||||
atlasImages.clear();
|
||||
|
||||
for (auto& set : resolve.descriptorSets)
|
||||
fb->GetCommands()->TransferDeleteList->Add(std::move(set));
|
||||
resolve.descriptorSets.clear();
|
||||
}
|
||||
|
||||
void VkLightmap::RenderAtlasImage(size_t pageIndex)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue