[發明專利]一種基于曲面細分的著色器簡化方法、裝置及圖形渲染方法在審
| 申請號: | 201410541956.2 | 申請日: | 2014-10-14 |
| 公開(公告)號: | CN104616327A | 公開(公告)日: | 2015-05-13 |
| 發明(設計)人: | 王銳;鮑虎軍;楊先津;袁亞振 | 申請(專利權)人: | 浙江大學 |
| 主分類號: | G06T11/00 | 分類號: | G06T11/00 |
| 代理公司: | 杭州天勤知識產權代理有限公司 33224 | 代理人: | 胡紅娟 |
| 地址: | 310027 浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 曲面 細分 著色 簡化 方法 裝置 圖形 渲染 | ||
技術領域
本發明涉及圖形渲染技術領域,尤其涉及一種基于曲面細分的著色器簡化方法、裝置及圖形渲染方法。
背景技術
圖形渲染的主要功能是根據給定的待渲染模型,在屏幕上生成(渲染)二維圖像。其中,場景物體在屏幕上的形狀和位置由待渲染模型本身的幾何、相機的方位和參數決定。而待渲染模型在屏幕上的外觀則由待渲染模型的材質屬性、光源屬性、紋理和設置的光照明模型決定。圖形渲染的整個流程被分成一系列的階段,這些階段之間是線性串聯的關系,前一階段的輸出是后一階段的輸入,前一階段沒有完成,則后一階段不會啟動,這種形式稱之為渲染流水線或者渲染管線。由于計算性能對于渲染的重要性,當前渲染流水線都由特制的計算機硬件——圖形處理單元(GPUs)來專門進行計算。
由于圖形技術水平和圖形硬件的發展水平的限制,早期的圖形渲染大多使用的是固定功能的渲染流水線。所謂固定功能渲染流水線就是預先將渲染管線中各個階段的功能定義好,在渲染啟動時只需要設置管線各個階段的渲染狀態,再將頂點數據送入流水線,整個渲染流程不再施加額外的干預。在這種渲染方式中,管線的功能都已經固化,故稱為固定功能渲染流水線。
隨著圖形技術和圖形硬件技術的發展,固定功能流水線已經不能滿足人們對高品質畫面追求。為了追求更出色的渲染效果,人們將固定管線中的一些階段進行了改進,使之不再執行固定的功能,而可以通過用戶定制的代碼來控制這個階段的操作,實現更豐富的功能。改進過后的渲染流水線稱之為定制流水線,也稱之為可編程流水線。
在可編程流水線中,由用戶定制的代碼被稱為著色器(Shader)。根據渲染管線不同階段所提供可定制功能的不同,最新的可編程流水線提供了5種著色器,根據數據渲染的流程,依次為頂點著色器(Vertex?Shader)、細分著色器(Tesselation?Shader,包含2種著色器,對于DirectX,細分著色器包括外殼著色器(Hull?Shader)和域著色器(Domain?Shader);對于OpenGL,細分著色器包括細分評估著色器和細分控制著色器)、幾何著色器(Geometry?Shader)和像素著色器(Fragment?Shader)。以上5個著色器按照功能可分為3類。第一類著色器是頂點著色器,處理頂點信息。第二類著色器是幾何處理著色器,包括幾何著色器和細分著色器,用于計算并輸出新的幾何圖元。第三類是像素著色器,其輸入為插值后的幾何屬性并且輸出為像素的顏色值。通過這些著色器,渲染流水線中不同階段的不同硬件資源、不同硬件處理模式被暴露出來可以供用戶操作與使用,從而編寫具有特定計算功能的著色器程序。
由于可編程流水線所提供的可定制功能的著色器,給使用者提供了廣闊的可定制功能,當前的很多應用程序如視頻游戲、可視化、高真實感繪制等都依賴于高性能的著色器計算。但是,著色器程序編寫的質量很大程度上依賴于程序員的經驗。盡管有一些規則和工具集來處理交互式建模和著色器程序優化,整個渲染過程仍然耗時,并且也不是最高效的。因此,人們開展了一些工作進行自動的著色器優化,并且取得了很好的結果。
自動的著色器優化方法,以用戶編寫的著色器代碼和待渲染場景為外部輸入數據,通過對著色器代碼使用渲染流水線硬件資源的分析與處理,實現對繪制流水線硬件資源的優化配置與調整,實現對待渲染模型渲染結果質量、渲染所需時間以及渲染過程所需顯存空間的改變,從而提高圖形處理單元(GPUs)的計算性能,滿足用戶的需要。
一般地,對于整個著色器,最耗時的渲染計算都在像素著色器部分,因此以前的方法主要的目標都在優化像素著色器的計算。Pellacini提供了一個用戶可配置的著色器簡化方法來進行逐像素的過程建模。程序生成一系列由原始著色器逐步簡化生成的著色器。該方法通過對著色器的代碼應用指定的簡化規則來生成一系列的候選變種,然后評估變種與原始著色器之間度量的差來選擇具有最小誤差的候選變種。這種選擇過程一直循環直到最后的著色器成為了常量。Sitthi-amorn使用遺傳編程來自動簡化渲染過程。與Pellacini類似,該算法同樣計算一系列逐步簡化的著色器,但考慮了更多的代碼變換規則,包括代碼中表達式語句中操作數與操作符的交換、語句的刪除和語句的插入等,同時該方法使用遺傳算法來選取更多的簡化后的著色器,并且也能生成更快的和更可靠的結果。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江大學;,未經浙江大學;許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410541956.2/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種快速顯示方法
- 下一篇:實現3D圖像采集與打印的翻轉攝像移動終端及方法





