[發明專利]一種3D渲染方法、裝置及引擎有效
| 申請號: | 201610004878.1 | 申請日: | 2016-01-06 |
| 公開(公告)號: | CN105701854B | 公開(公告)日: | 2018-07-03 |
| 發明(設計)人: | 孔穎 | 申請(專利權)人: | 網易(杭州)網絡有限公司 |
| 主分類號: | G06T15/00 | 分類號: | G06T15/00 |
| 代理公司: | 深圳新創友知識產權代理有限公司 44223 | 代理人: | 江耀純 |
| 地址: | 310052 浙江省杭州*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 內存 參數索引 映射表 映射關系 拷貝 預置 調用 引擎 渲染 驅動 記錄 | ||
1.一種基于DirectX Effect系統的3D渲染方法,其特征在于,包括步驟:
S1、在調用DrawCall對當前畫面的物體進行渲染時,根據預置的映射表獲取3D引擎內存中的所述物體的參數值所對應的shader參數索引值;其中,所述映射表中記錄有DirectXEffect系統的Effect參數名與shader參數索引值的映射關系,且所述3D引擎內存中的每一物體的參數值設有對應的Effect參數名;
S2、將所述3D引擎內存中的所述物體的參數值拷貝到所述shader參數索引值所對應的驅動內存中。
2.如權利要求1所述的基于DirectX Effect系統的3D渲染方法,其特征在于,所述映射表具體通過以下方式預先得到:
為DirectX Effect系統中的每一Effect參數名設置對應的唯一識別碼,并記錄Effect參數名與唯一識別碼的映射關系;其中,每一所述唯一識別碼作為對應的Effect參數名的參數值;
將所述唯一識別碼拷貝到shader的驅動內存中以進行Effect參數設置,使所述DirectX Effect系統產生shader級別的API回調;
在所述API回調中獲取shader參數索引值及對應的shader參數值;其中,所述shader參數值與所述唯一識別碼一一對應;
基于所述shader參數值與所述唯一識別碼的對應關系以及所述Effect參數名與唯一識別碼的映射關系,得到所述Effect參數名與shader參數索引值的映射關系。
3.如權利要求1所述的基于DirectX Effect系統的3D渲染方法,其特征在于,所述方法還包括步驟:
S3、若當前畫面的所有物體渲染完成,則將渲染完成后的當前畫面輸出,否則返回步驟S1。
4.如權利要求1~3任一項所述的基于DirectX Effect系統的3D渲染方法,其特征在于,所述畫面為游戲畫面。
5.一種基于DirectX Effect系統的3D渲染方法,其特征在于,包括步驟:
S1、在調用DrawCall對當前畫面的物體進行渲染時,根據預置的映射表獲取3D引擎內存中的所述物體的參數值所對應的shader參數索引值;其中,所述映射表中記錄有DirectXEffect系統的Effect參數名與shader參數索引值的映射關系,且所述3D引擎內存中的每一物體的參數值設有對應的Effect參數名;
S2、根據所述物體的參數名判斷對應的參數值是否為全局Effect參數值,若在判斷為是全局Effect參數值并且非首次對當前畫面調用DrawCall時,返回執行步驟S1,否則執行步驟S3;其中,所述全局參數值是指同一場景中所有物體都相同的參數值;
S3、將所述3D引擎內存中的所述物體的參數值拷貝到所述shader參數索引值所對應的驅動內存中。
6.如權利要求5所述的基于DirectX Effect系統的3D渲染方法,其特征在于,所述映射表具體通過以下方式預先得到:
為DirectX Effect系統中的每一Effect參數名設置對應的唯一識別碼,并記錄Effect參數名與唯一識別碼的映射關系;其中,每一所述唯一識別碼作為對應的Effect參數名的參數值;
將所述唯一識別碼拷貝到shader的驅動內存中以進行Effect參數設置,使所述DirectX Effect系統產生shader級別的API回調;
在所述API回調中獲取shader參數索引值及對應的shader參數值;其中,所述shader參數值與所述唯一識別碼一一對應;
基于所述shader參數值與所述唯一識別碼的對應關系以及所述Effect參數名與唯一識別碼的映射關系,得到所述Effect參數名與shader參數索引值的映射關系。
7.如權利要求5所述的基于DirectX Effect系統的3D渲染方法,其特征在于,所述方法還包括步驟:
S4、若當前畫面的所有物體渲染完成,則將渲染完成后的當前畫面輸出,否則返回步驟S1。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于網易(杭州)網絡有限公司,未經網易(杭州)網絡有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610004878.1/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:金屬陶瓷蓋板
- 下一篇:用于合作動畫的實時方法





