Minor fixes

This commit is contained in:
SirLynix 2023-11-17 11:58:03 +01:00
parent ddc8cc6797
commit 5a14808a57
7 changed files with 15 additions and 8 deletions

View File

@ -80,7 +80,7 @@ namespace Nz
ForwardFramePipeline& operator=(ForwardFramePipeline&&) = delete; ForwardFramePipeline& operator=(ForwardFramePipeline&&) = delete;
private: private:
BakedFrameGraph BuildFrameGraph(); BakedFrameGraph BuildFrameGraph(RenderFrame& renderFrame);
void RegisterMaterialInstance(MaterialInstance* materialPass); void RegisterMaterialInstance(MaterialInstance* materialPass);
void UnregisterMaterialInstance(MaterialInstance* material); void UnregisterMaterialInstance(MaterialInstance* material);

View File

@ -9,7 +9,7 @@ namespace Nz
{ {
inline void RenderSystem::AttachExternalSwapchain(WindowSwapchain& swapchain) inline void RenderSystem::AttachExternalSwapchain(WindowSwapchain& swapchain)
{ {
m_windowSwapchains.emplace_back(&swapchain); m_externalSwapchains.emplace_back(swapchain);
} }
inline void RenderSystem::DetachExternalSwapchain(WindowSwapchain& swapchain) inline void RenderSystem::DetachExternalSwapchain(WindowSwapchain& swapchain)

View File

@ -47,7 +47,7 @@ namespace Nz
private: private:
std::size_t m_freeCommandBufferIndex; std::size_t m_freeCommandBufferIndex;
std::vector<VkCommandBuffer> m_allocatedCommandBuffers;; std::vector<VkCommandBuffer> m_allocatedCommandBuffers;
std::vector<VkCommandBuffer> m_graphicalCommandBuffers; std::vector<VkCommandBuffer> m_graphicalCommandBuffers;
VulkanSwapchain& m_owner; VulkanSwapchain& m_owner;
Vk::CommandPool m_commandPool; Vk::CommandPool m_commandPool;

View File

@ -372,7 +372,7 @@ namespace Nz
if (m_rebuildFrameGraph) if (m_rebuildFrameGraph)
{ {
renderFrame.PushForRelease(std::move(m_bakedFrameGraph)); renderFrame.PushForRelease(std::move(m_bakedFrameGraph));
m_bakedFrameGraph = BuildFrameGraph(); m_bakedFrameGraph = BuildFrameGraph(renderFrame);
m_bakedFrameGraph.Resize(renderFrame); m_bakedFrameGraph.Resize(renderFrame);
frameGraphInvalidated = true; frameGraphInvalidated = true;
} }
@ -689,7 +689,7 @@ namespace Nz
} }
} }
BakedFrameGraph ForwardFramePipeline::BuildFrameGraph() BakedFrameGraph ForwardFramePipeline::BuildFrameGraph(RenderFrame& renderFrame)
{ {
FrameGraph frameGraph; FrameGraph frameGraph;
@ -748,7 +748,13 @@ namespace Nz
return lhs.second->renderOrder < rhs.second->renderOrder; return lhs.second->renderOrder < rhs.second->renderOrder;
}); });
for (auto&& [_, renderTargetData] : m_renderTargets)
{
if (renderTargetData.blitShaderBinding)
renderFrame.PushForRelease(std::move(renderTargetData.blitShaderBinding));
}
m_renderTargets.clear(); m_renderTargets.clear();
for (auto&& [renderTarget, viewerData] : viewers) for (auto&& [renderTarget, viewerData] : viewers)
{ {
auto& renderTargetData = m_renderTargets[renderTarget]; auto& renderTargetData = m_renderTargets[renderTarget];

View File

@ -159,11 +159,12 @@ namespace Nz
forwardPass.AddOutput(inputOuputs.outputAttachments[0]); forwardPass.AddOutput(inputOuputs.outputAttachments[0]);
if (inputOuputs.depthStencilInput != FramePipelinePass::InvalidAttachmentIndex) if (inputOuputs.depthStencilInput != FramePipelinePass::InvalidAttachmentIndex)
forwardPass.SetDepthStencilInput(inputOuputs.depthStencilInput); forwardPass.SetDepthStencilInput(inputOuputs.depthStencilInput);
else
forwardPass.SetDepthStencilClear(1.f, 0);
forwardPass.SetDepthStencilOutput(inputOuputs.depthStencilOutput); forwardPass.SetDepthStencilOutput(inputOuputs.depthStencilOutput);
forwardPass.SetClearColor(0, m_viewer->GetClearColor()); forwardPass.SetClearColor(0, m_viewer->GetClearColor());
forwardPass.SetDepthStencilClear(1.f, 0);
forwardPass.SetExecutionCallback([&]() forwardPass.SetExecutionCallback([&]()
{ {

View File

@ -1135,7 +1135,7 @@ namespace Nz
return false; return false;
} }
return LoadFaceFromImage(face, *image);; return LoadFaceFromImage(face, *image);
} }
bool Image::SaveToFile(const std::filesystem::path& filePath, const ImageParams& params) bool Image::SaveToFile(const std::filesystem::path& filePath, const ImageParams& params)

View File

@ -152,7 +152,7 @@ int main()
program.GetActiveUniformBlock(blockIndex, GL_UNIFORM_BLOCK_DATA_SIZE, &dataSize); program.GetActiveUniformBlock(blockIndex, GL_UNIFORM_BLOCK_DATA_SIZE, &dataSize);
if (fieldOffsets.GetAlignedSize() != std::size_t(dataSize)) if (fieldOffsets.GetAlignedSize() != std::size_t(dataSize))
std::cout << "size mismatch (computed " << fieldOffsets.GetAlignedSize() << ", reference has " << dataSize << ")" << std::endl;; std::cout << "size mismatch (computed " << fieldOffsets.GetAlignedSize() << ", reference has " << dataSize << ")" << std::endl;
if (computedOffsets.size() != uniformIndices.size()) if (computedOffsets.size() != uniformIndices.size())
{ {