[發明專利]一種基于紋理的三角帶字符表示和實例化渲染方法及系統在審
| 申請號: | 202210250365.4 | 申請日: | 2022-03-15 |
| 公開(公告)號: | CN114627212A | 公開(公告)日: | 2022-06-14 |
| 發明(設計)人: | 束禹承;溫永寧;樂松山;陳旻 | 申請(專利權)人: | 南京師范大學 |
| 主分類號: | G06T11/60 | 分類號: | G06T11/60;G06F40/109;G06F40/126;G06T7/40;G06T7/90 |
| 代理公司: | 北京高沃律師事務所 11569 | 代理人: | 杜陽陽 |
| 地址: | 210097 *** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 紋理 三角 字符 表示 實例 渲染 方法 系統 | ||
本發明涉及一種基于紋理的三角帶字符表示和實例化渲染方法及系統,涉及字符繪制技術領域,首先將矢量字體依據三角帶這一基本圖元轉換為對應的有序頂點數組。接著利用編碼器將頂點坐標編碼為紋素并保存為紋理。其次在字符實例化渲染流程中將紋理傳入顯存,在頂點著色器內利用采樣器提取紋素信息,通過解碼器將紋素解碼為標準化設備坐標下的坐標數據。最后完成對字符的繪制。本發明始終將紋理作為數據在硬件中傳遞的媒介,確保了字符數據在CPU和GPU內存儲形式的一致性;而采用三角帶字符描述和重釋義實例化渲染方法,使單次繪制調用內繪制單幀所需全部字符成為可能。本發明方法在允許字體大批量復用的同時實現了對字符的高效正確繪制。
技術領域
本發明涉及字符繪制技術領域,特別是涉及一種基于紋理的三角帶字符表示和實例化渲染方法及系統。
背景技術
文字是人類文明的重要標志,支持文字的可視化是計算機圖形學必然面臨且必須解決的問題。在人類歷史中誕生的文字種類繁多,字體隨實用性和藝術性的不同需求又存在不同的衡量與使用標準,因此對字符進行有效描述與渲染是一個復雜的問題。
在計算機圖形學的發展過程中,字符可視化主要包括早期經典的位圖字體(Bitmap Font)描述與2D方塊渲染方法以及現代的矢量字體描述和點陣填充渲染方法。
現代的矢量字體,例如TrueType字體,用關鍵點和數學曲線方式描述字符外形輪廓,渲染時則將關鍵點連線以生成字符輪廓,并通過在輪廓內部填充點陣的方式實現對字符的繪制。由于使用B-樣條曲線和直線的組合,該方法可以非常好的表達字符的輪廓特點。此外得益于數學的描述方式,該方法具有矢量特征,不存在縮放問題。但在渲染時與常見GPU繪制方案和經典位圖字體類似,其本質都是生成點陣數據,用貼圖的方式實現文字渲染。這使字符數據喪失了矢量特征而回到了像素模式下,因此存在縮放和旋轉問題。具體而言,在諸如地圖注記符號顯示等應用場景下,縮放旋轉點陣數據可能會使之與設備像素無法完全匹配,從而導致字形特征被不合理繪制,出現諸如字形扭曲,顯示模糊等問題。
因此,本領域亟需一種確保滿足字體大批量復用需求的同時實現對字符的高效正確繪制的技術方案。
發明內容
本發明的目的是提供一種基于紋理的三角帶字符表示和實例化渲染方法及系統,始終將紋理作為數據在硬件中傳遞的媒介,確保了字符數據在CPU和GPU內存儲形式的一致性,而且采用三角帶字符描述和重釋義實例化渲染方法,有效解決了現有技術中縮放旋轉點陣數據時與設備像素無法完全匹配,導致的字形特征被不合理繪制,出現諸如字形扭曲,顯示模糊等問題。
為實現上述目的,本發明提供了如下方案:
一種基于紋理的三角帶字符表示和實例化渲染方法,所述方法包括:
獲取需要繪制的字符的輪廓;
將每個字符的輪廓利用三角帶轉換為有序頂點序列;
利用樹形拆分方法將所述有序頂點序列編碼為紋理,并記錄每個有序頂點序列在所述紋理中的行索引;
將所述紋理和所述行索引傳輸至顯存;
根據所述紋理與所述有序頂點序列的對應關系編寫解碼器;
獲取指定字符的紋理;所述指定字符為有顯示需求的字符;
利用所述解碼器解碼所述指定字符的紋理,得到有序頂點序列;
根據所述有序頂點序列顯示所述指定字符。
在一些實施例中,所述獲取需要繪制的字符的輪廓,具體包括:
加載字體文件,按照指定字號生成所述字體文件中的所有字符;
獲取每個字符的輪廓。
在一些實施例中,所述將每個字符的輪廓利用三角帶轉換為有序頂點序列,具體包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京師范大學,未經南京師范大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210250365.4/2.html,轉載請聲明來源鉆瓜專利網。





