2017-06-20 2 views

Antwort

2

Nein. Eine Pipeline wird immer relativ zu einem spezifischen Subpass eines bestimmten Render-Durchgangs aufgebaut. Es kann nicht in einem anderen subpass verwendet werden:

subpass Der Index der aktuellen Render Pass zum subpass Mitglied der VkGraphicsPipelineCreateInfo Struktur angegeben gleich sein muß, wenn die VkPipeline gerade dabei zu VK_PIPELINE_BIND_POINT_GRAPHICS gebunden.

Sie müssen mehrere Pipelines erstellen, eine für jeden Subpass, mit der Sie sie verwenden möchten. Der Pipeline-Cache sollte dies für Implementierungen effizient machen, die sich nicht wirklich darum kümmern.

+2

Außerdem ist die Verwendung der gleichen Pipeline für mehrere Subpässe nicht typisch für häufige Anwendungsfälle von Subpässen. Wenn Sie dies tun möchten, könnte dies ein Signal dafür sein, dass es eine einfachere oder effizientere Möglichkeit gibt, das zu tun, was Sie tun möchten. Im Allgemeinen führt bei mehreren Subpass-Render-Durchgängen jeder Subpass einen anderen Unteralgorithmus des Gesamt-Rendering-Algorithmus aus, so dass die Shader (und damit die Pipelines) unterschiedlich sind. –

Verwandte Themen