Graphics/PipelinePassList: Add AddPass overload taking a pass name
This commit is contained in:
parent
14f51b31ca
commit
5a96ab3bf7
|
|
@ -48,6 +48,7 @@ namespace Nz
|
||||||
inline std::size_t AddAttachment(FramePassAttachment attachment);
|
inline std::size_t AddAttachment(FramePassAttachment attachment);
|
||||||
inline std::size_t AddAttachmentProxy(std::string name, std::size_t attachmentIndex);
|
inline std::size_t AddAttachmentProxy(std::string name, std::size_t attachmentIndex);
|
||||||
inline std::size_t AddPass(std::string name, std::size_t implIndex, ParameterList parameterList = {});
|
inline std::size_t AddPass(std::string name, std::size_t implIndex, ParameterList parameterList = {});
|
||||||
|
std::size_t AddPass(std::string name, std::string_view impl, ParameterList parameterList = {});
|
||||||
|
|
||||||
std::vector<std::unique_ptr<FramePipelinePass>> BuildPasses(FramePipelinePass::PassData& passData) const;
|
std::vector<std::unique_ptr<FramePipelinePass>> BuildPasses(FramePipelinePass::PassData& passData) const;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,16 @@ namespace Nz
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::size_t PipelinePassList::AddPass(std::string name, std::string_view impl, ParameterList parameterList)
|
||||||
|
{
|
||||||
|
auto& passRegistry = Graphics::Instance()->GetFramePipelinePassRegistry();
|
||||||
|
|
||||||
|
std::size_t passIndex = passRegistry.GetPassIndex(impl);
|
||||||
|
NazaraAssertFmt(passIndex != passRegistry.InvalidIndex, "invalid pass name {0}", impl);
|
||||||
|
|
||||||
|
return AddPass(std::move(name), passIndex, std::move(parameterList));
|
||||||
|
}
|
||||||
|
|
||||||
std::vector<std::unique_ptr<FramePipelinePass>> PipelinePassList::BuildPasses(FramePipelinePass::PassData& passData) const
|
std::vector<std::unique_ptr<FramePipelinePass>> PipelinePassList::BuildPasses(FramePipelinePass::PassData& passData) const
|
||||||
{
|
{
|
||||||
auto& passRegistry = Graphics::Instance()->GetFramePipelinePassRegistry();
|
auto& passRegistry = Graphics::Instance()->GetFramePipelinePassRegistry();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue