看板 GameDesign 關於我們 聯絡資訊
大家好 目前小弟正在學習使用 Shader 目前知道如何載入 並實際使用fx檔案 的基礎用法 舉例如下 : ------ static D3DXHANDLE hTechnique; static UINT totalPasses; ... if (SUCCEEDED(g_pEffect->SetTechnique(hTechnique))) { if (SUCCEEDED(g_pEffect->Begin(&totalPasses, 0))) { for (UINT pass = 0; pass < totalPasses; ++pass) { if (SUCCEEDED(g_pEffect->BeginPass(pass))) { g_pDevice->DrawPrimitive(D3DPT_TRIANGLELIST, 0, 12); g_pEffect->EndPass(); } } g_pEffect->End(); } } ------ 如果想要執行 兩個以上的特效功能 我目前的認知是 在同一個 Technique 中 撰寫所需要兩個以上的 Pass 讓上述的程式碼去執行 但是如果我想要分成兩個以上的 Technique 來撰寫呢?? 又或者是想分成兩個以上的 *.fx File 呢?? 因為考量到 如果系統要同時使用大量的 Shader 就不能全寫再同一個fx檔中 難道是要用遞迴的方式 不斷執行 SetTechnique() BeginPass() 等載入動作?? 小弟百思不得其解 因此前來請教 希望可以請版上的前輩 給小弟一些指導與建議 十分感謝 <(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.76.190.21
darkflier:兩個effect 08/17 12:24