[發明專利]一種繪制方法及裝置、設備、計算機可讀存儲介質在審
| 申請號: | 202011450173.5 | 申請日: | 2020-12-09 |
| 公開(公告)號: | CN112540810A | 公開(公告)日: | 2021-03-23 |
| 發明(設計)人: | 何燦 | 申請(專利權)人: | 競技世界(北京)網絡技術有限公司 |
| 主分類號: | G06F9/448 | 分類號: | G06F9/448;G06T1/20;G06T1/60 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 劉穎 |
| 地址: | 101400 北京市懷*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 繪制 方法 裝置 設備 計算機 可讀 存儲 介質 | ||
本申請提供了一種繪制方法及裝置、設備、計算機可讀存儲介質,主線程向子線程提交繪制數據的步驟,與子線程向GPU提交著色器數據的過程,異步實現,所以,主線程只需逐次向子線程提交各個待繪制的物體的繪制數據即可,向GPU提交著色器數據由子線程執行,所以,主線程無需被阻塞,從而能夠避免因為主線程被阻塞而導致的應用的卡頓問題,以提高用戶的使用體驗。
技術領域
本申請涉及計算機顯示領域,尤其涉及一種繪制方法及裝置、設備、計算機可讀存儲介質。
背景技術
繪制技術廣泛應用于計算機顯示領域,渲染著色是繪制技術中的重要部分。
現有技術中,繪制由應用(APP)的主線程控制著色子程序實現。著色器數據的提交,需要在主線程獲得數據在圖形處理器(Graphics Processing Unit,GPU)中的地址后,才能實現。而獲得GPU中的地址的過程,需要阻塞主線程,由子程序實現。因為主線程還用于實現其它功能,所以,阻塞主線程會導致應用運行的卡頓。
發明內容
本申請提供了一種繪制方法及裝置、設備、計算機可讀存儲介質,目的在于解決繪制過程中的卡頓問題。
為了實現上述目的,本申請提供了以下技術方案:
一種繪制方法,包括:
異步執行第一流程和第二流程;
所述第一流程包括:主線程響應于接收到用于繪制第一物體的著色器數據,向子線程發送第一標識、所述著色器數據以及所述第一物體的參數布局數據;所述第一標識用于指示預設的第一著色子程序,所述第一著色子程序用于繪制所述第一物體;
所述第二流程包括:所述子線程使用所述第一標識,獲取第二標識,所述第二標識為所述子線程中的第一著色子程序的標識;所述子線程查詢所述第二標識和所述第一物體的參數布局數據對應的地址;所述子線程向所述地址提交所述著色器數據。
可選的,所述第一物體的參數布局數據,包括:
所述第一物體的參數布局散列值;
所述第一物體的參數布局散列值通過對所述第一物體的參數布局執行散列算法生成,所述第一物體的參數布局為按順序排列的數據項。
可選的,所述查詢所述第二標識和所述第一物體的參數布局數據對應的地址,包括:
生成所述第二標識的散列值;
查詢與所述第二標識的散列值對應的程序;
使用所述第一物體的參數布局數據、以及所述第二標識的散列值對應的程序的句柄,生成真實參數索引散列值;
從所述真實參數索引散列值對應的真實參數索引中查詢所述地址,所述真實參數索引指示著色器數據與所述GPU中的地址的對應關系。
可選的,所述第二流程還包括:
如果所述子線程查詢不到所述地址,則從所述GPU中查詢所述地址。
可選的,所述主線程還用于:
在所述向子線程發送第一標識、所述著色器數據以及所述第一物體的參數布局數據之前,生成所述第一物體的著色器數據的散列值;
從已生成的數據散列值與著色子程序的標識的對應關系中,查詢所述第一物體的著色器數據的散列值對應的標識;
將所述第一物體的著色器數據的散列值對應的標識,作為所述第一標識。
可選的,所述主線程還用于:
如果所述對應關系中查詢不到所述第一物體的著色器數據的散列值對應的標識,則在所述主線程中創建具有所述第一標識的所述第一著色程序;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于競技世界(北京)網絡技術有限公司,未經競技世界(北京)網絡技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011450173.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種寵物雙色營養膏及其制備方法
- 下一篇:一種用于柔性機械手抓取壽命測試裝置





