我想在DirectX 12中實現顏色選擇。所以基本上我所要做的就是同時渲染兩個渲染目標。第一個渲染目標應該包含正常渲染,而第二個應該包含objectID。C++,directx 12:顏色挑選問題
要渲染到兩個渲染目標,我認爲你需要做的就是用OMSetRenderTargets設置它們。
問題1:你如何指定哪個着色器或流水線狀態對象應該用於特定的渲染目標?像你如何說render_target_0應該與shader_0渲染,render_target_1應該渲染shader_1?
問題2:如何在幀緩衝區被渲染後從幀緩衝區中讀取像素?是否像在DirectX 11中使用CopySubresourceRegion然後使用Map?你需要使用回讀堆嗎?您是否需要使用資源屏障或柵欄或某種同步原語來避免CPU和GPU同時使用幀緩衝區資源?
我試着用Google搜索的答案,但沒有得到很遠,因爲DirectX 12是相當新的,並沒有很多的例子,教程或DirectX 12的開源項目。
感謝您的幫助提前。
代碼示例的額外特殊獎勵積分。