軟體著色器
軟體著色器會實作,以允許在沒有基礎硬體支援的情況下開發著色器。 它們支援完整的功能集。 因為它們是在軟體中實作,所以不會產生最佳效能。
版本 | 功能集 | 要求 |
---|---|---|
vs_2_sw | vs_2_x的所有功能 | 僅支援軟體頂點處理和參考裝置。 |
vs_3_sw | vs_3_0的所有功能 | 僅支援軟體頂點處理和參考裝置。 |
ps_2_sw | ps_2_x的所有功能 | 僅受參考裝置支援。 |
ps_3_sw | ps_3_0的所有功能 | 僅受參考裝置支援。 |
對於軟體著色器而言,有些驗證很寬鬆。 這對於偵錯和原型設計用途很有用。 下列驗證很寬鬆:(所有其他驗證都保持不變)
驗證類型 | 放鬆 |
---|---|
指令計數: | 對於vs_2_sw、vs_3_sw和ps_2_sw來說,這是輕鬆的,ps_3_sw。 允許無限制的指示。 |
浮點數計數: | 對於vs_2_sw、vs_3_sw和ps_2_sw來說,這是輕鬆的,ps_3_sw。 最多允許8192個常數。 |
整數常數計數: | 對於vs_2_sw、vs_3_sw和ps_2_sw來說,這是輕鬆的,ps_3_sw。 最多允許 2048 個常數。 |
布林常數計數: | 對於vs_2_sw、vs_3_sw和ps_2_sw來說,這是輕鬆的,ps_3_sw。 最多允許 2048 個常數。 |
相依讀取深度: | 對於ps_2_sw來說,這是寬鬆的。 如同在vs_3_0和ps_3_0中,允許無限制的相依讀取。 |
流程控制指令和標籤: | 對於vs_2_sw來說,這是寬鬆的。 允許無限制的流程控制指示和最多 2048 個標籤。 |
循環計數/啟動/步驟: | 對於vs_2_sw、vs_3_sw、ps_2_sw和ps_3_sw來說,這些都是寬鬆的。 代表和迴圈指令的反覆項目開始和插播步驟大小是32位帶正負號的插播器。 插補計數最多可MAX_INT/64。 |
讀取埠限制: | vs_2_sw、vs_3_sw、ps_2_sw和ps_3_sw沒有讀取埠限制。 |
插補器數目: | vs_3_sw中有 16 快存器 - vs_3_0 (o#) 和 10 ps_3_0 registers (v#) for ps_3_sw。 |
相關主題