DirectX11: i dati passano da ComputeShader a VertexShader?
-
27-09-2019 - |
Domanda
E 'possibile applicare un filtro ai dati geometrici che deve essere reso usando Compute Shader e quindi utilizzare il risultato come un buffer di ingresso nel Vertex Shader? Questo mi farebbe risparmiare il disturbo (e di tempo) della rilettura dei dati.
Ogni aiuto è molto apprezzato.
Soluzione
Sì assolutamente. In primo luogo si creano due identicals ID3D11Buffer
di strutture utilizzando BIND_VERTEX_BUFFER
, BIND_SHADER_RESOURCE
e di utilizzo BIND_UNORDERED_ACCESS
bandiere, e gli UAV e SRVs associati.
Il primo passo è quello di applicare il filtro al buffer sorgente di ingresso e scrittura al buffer di destinazione durante il passaggio calcolo.
Poi durante il passaggio di pareggio, non resta che associare il buffer di destinazione alla fase IA
. Si può fare un po 'da ping-pong, se avete bisogno di calcoli accumularsi sulle vertici (presumo che dal filtro si intende un mappa funzionale , per riferendosi al termine programmazione funzionale).