[發明專利]一種驗證著色器函數的方法、裝置及計算機存儲介質在審
| 申請號: | 202010286679.0 | 申請日: | 2020-04-13 |
| 公開(公告)號: | CN111383314A | 公開(公告)日: | 2020-07-07 |
| 發明(設計)人: | 張斌;馬棟;劉微 | 申請(專利權)人: | 西安芯瞳半導體技術有限公司 |
| 主分類號: | G06T15/00 | 分類號: | G06T15/00;G06T1/20;G06T1/60 |
| 代理公司: | 西安維英格知識產權代理事務所(普通合伙) 61253 | 代理人: | 沈寒酉;李斌棟 |
| 地址: | 710065 陜西省西安市高新區丈八*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 驗證 著色 函數 方法 裝置 計算機 存儲 介質 | ||
本發明實施例公開了一種驗證著色器函數的方法、裝置及計算機存儲介質;該方法可以包括:根據原始數據通過GPU中的著色器運行對應的著色器函數,捕獲所述著色器函數的運行結果;通過GPU將所述著色器函數的運行結果傳遞至設定的緩沖區對象緩存;通過CPU根據所述原始數據模擬運行所述著色器函數,獲取所述著色器函數的模擬結果;通過CPU讀取所述緩沖區對象內的所述著色器函數運行結果;通過CPU將所述著色器函數運行結果與所述著色器函數的模擬結果進行比較以驗證所述著色器函數。
技術領域
本發明實施例涉及圖像處理器(GPU,Graphic Processing Unit)技術領域,尤其涉及一種驗證著色器函數的方法、裝置及計算機存儲介質。
背景技術
目前,在圖形渲染管線中,可以通過著色器語言(SL,Shader Language)編寫著色器Shader函數以實現圖形渲染管線中各種類型著色器的著色器程序。由于Shader函數運行于GPU中,基于CPU和GPU之間存儲編譯環境的不同,針對Shader函數的驗證更加復雜。
一般來說,目前針對Shader函數的驗證方案,都是針對圖形渲染管線的最終輸出數據進行封裝或解析,從而判斷圖形渲染管線在處理過程中所使用的Shader函數的執行結果是否正確。上述方案必須整個圖形渲染管線執行完畢后才能夠對輸出數據進行解析,導致驗證時流水線層級多,驗證效率低。
發明內容
有鑒于此,本發明實施例期望提供一種驗證著色器函數的方法、裝置及計算機存儲介質;能夠便捷地對Shader函數進行驗證,提高了驗證的靈活性。
本發明實施例的技術方案是這樣實現的:
第一方面,本發明實施例提供了一種驗證著色器函數的方法,包括:
根據原始數據通過GPU中的著色器運行對應的著色器函數,捕獲所述著色器函數的運行結果;
通過GPU將所述著色器函數的運行結果傳遞至設定的緩沖區對象緩存;
通過CPU根據所述原始數據模擬運行所述著色器函數,獲取所述著色器函數的模擬結果;
通過CPU讀取所述緩沖區對象內的所述著色器函數運行結果;
通過CPU將所述著色器函數運行結果與所述著色器函數的模擬結果進行比較以驗證所述著色器函數。
在上述方案中,所述著色器包括頂點著色器、幾何著色器、片段著色器以及計算著色器中的至少一項;相應地,所述著色器函數包括頂點著色器函數、幾何著色器函數、片段著色器函數以及計算著色器函數中的至少一項。
在上述方案中,所述頂點著色器函數包括針對頂點數據進行處理的頂點函數以及用于通用計算的通用函數;所述幾何著色器函數包括細分函數和幾何處理函數。
在上述方案中,所述通過GPU將所述著色器函數的運行結果傳遞至設定的緩沖區對象緩存,包括:
通過GPU在所述著色器函數運行完畢后,將所述著色器函數的運行結果寫入著色器存儲緩沖器對象SSBO。
第二方面,本發明實施例提供了一種驗證著色器函數的裝置,所述裝置包括:存儲器、CPU、GPU以及緩沖區對象緩存;其中,
所述存儲器用于存儲原始數據;
所述GPU,經配置以執行以下步驟:
根據原始數據通過著色器運行對應的著色器函數,捕獲所述著色器函數的運行結果;
以及,將所述著色器函數的運行結果傳遞至所述緩沖區對象緩存;
所述CPU,經配置已執行以下步驟:
根據所述原始數據模擬運行所述著色器函數,獲取所述著色器函數的模擬結果;以及,
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安芯瞳半導體技術有限公司,未經西安芯瞳半導體技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010286679.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:空氣循環裝置、空氣凈化機、空氣加濕器
- 下一篇:一種激光加工小孔的方法





