[發明專利]一種3D渲染方法、裝置及引擎有效
| 申請號: | 201610004878.1 | 申請日: | 2016-01-06 |
| 公開(公告)號: | CN105701854B | 公開(公告)日: | 2018-07-03 |
| 發明(設計)人: | 孔穎 | 申請(專利權)人: | 網易(杭州)網絡有限公司 |
| 主分類號: | G06T15/00 | 分類號: | G06T15/00 |
| 代理公司: | 深圳新創友知識產權代理有限公司 44223 | 代理人: | 江耀純 |
| 地址: | 310052 浙江省杭州*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 內存 參數索引 映射表 映射關系 拷貝 預置 調用 引擎 渲染 驅動 記錄 | ||
本發明公開了一種基于DirectX Effect系統的3D渲染方法,包括步驟:S1、在調用DrawCall對當前畫面的物體進行渲染時,根據預置的映射表獲取3D引擎內存中的所述物體的參數值所對應的shader參數索引值;其中,所述映射表中記錄有DirectX Effect系統的Effect參數名與shader參數索引值的映射關系,且所述3D引擎內存中的每一物體的參數值設有對應的Effect參數名;S2、將所述3D引擎內存中的所述物體的參數值拷貝到所述shader參數索引值所對應的驅動內存中。本發明還公開了一種基于DirectX Effect系統的3D渲染裝置及3D游戲引擎。
技術領域
本發明涉及圖像處理技術領域,尤其涉及一種基于DirectX Effect系統的3D渲染方法、裝置以及3D游戲引擎。
背景技術
3D引擎需要有各種渲染效果(Effect),比如方向光、點光、陰影等等這些基礎效果,又比如中毒、冰凍、隱身這些游戲中特殊渲染效果。
實現渲染效果的最底層技術就是Shader,這是一種直接運行在顯卡GPU上的程序,一般效果都會由頂點Shader與像素Shader組成,負責整個渲染流程的不同功能。
Shader的輸入包括頂點、貼圖與參數,當Shader程序確定功能之后,用戶改變這些輸入就可以顯示出不同的畫面表現。頂點決定渲染物體的形狀,貼圖決定渲染物體的基本顏色與紋理,參數則最終決定各種特殊效果的具體表現,比如方向光效果的方向參數決定物體的明暗面朝向、隱身效果的Alpha參數決定了物體透明的程度。
游戲畫面每一次渲染即為一次GPU DrawCall。每一次DrawCall對應著一個Effect、一套Shader,還對應著渲染物體的頂點、貼圖、參數。DrawCall是GPU進行渲染的最基礎調用。一幀3D畫面的DrawCall數量與畫面中的物體數量成正比,簡單的物體只有一次DrawCall,復雜的物體可能有多次DrawCall。
3D引擎可能有非常多的渲染效果,這么多的效果不可能都寫在引擎代碼里,因此Effect的描述需要在引擎之外去定義。引擎提供一個基礎的框架系統,支持用戶去擴展各種渲染效果。
Effect系統是底層Shader與各種輸入數據之間的橋梁,Effect系統定義了Effect文件。Effect文件是一種用戶可閱讀和修改的描述文本,它要描述Shader代碼本身,它要定義頂點的格式,它要定義這個效果需要多少貼圖,最后還要描述各種Shader參數的定義,一般的Effect都會帶有幾個到幾十個參數。而Effect系統具體的主要功能有兩個:1)在引擎加載模塊中解釋Effect文件中各種輸入數據的定義,2)在引擎渲染模塊中高效的把各種渲染輸入數據傳遞到底層的Shader。
現有3D引擎的Effect系統,一般有兩種實現選擇:
1)直接使用DirectX(Direct eXtension,簡稱DX)的Effect系統,這是微軟在DirectX中已經實現的一套Effect系統。優點是此系統直接可用且Effect文件格式比較通用,缺點就是無源碼,不夠靈活,性能方向只能說勉強夠用,真的要做極限的優化還有一段距離。這種方案在很多游戲公司自研端游引擎中比較常見。
2)自己實現一套Effect系統。由于微軟DirectX不是跨平臺的,因此當3D引擎有跨平臺的需求時,引擎開發者會自己實現一套Effect系統。這個方案的優點當然就是靈活、有需要可以自行修改,缺點是開發成本比較大,因為Effect文件是一種比較復雜的描述文本,基本就是一套簡化的編程語言,解釋難度比較大。
發明內容
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于網易(杭州)網絡有限公司,未經網易(杭州)網絡有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610004878.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:金屬陶瓷蓋板
- 下一篇:用于合作動畫的實時方法





