[發明專利]一種跨平臺模塊化的著色器語言通用集成方法在審
| 申請號: | 202111371752.5 | 申請日: | 2021-11-18 |
| 公開(公告)號: | CN114077433A | 公開(公告)日: | 2022-02-22 |
| 發明(設計)人: | 劉歆寧 | 申請(專利權)人: | 大連東軟信息學院 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06T15/00;G06T15/50 |
| 代理公司: | 大連至誠專利代理事務所(特殊普通合伙) 21242 | 代理人: | 王丹;陳義華 |
| 地址: | 116000 遼*** | 國省代碼: | 遼寧;21 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 平臺 模塊化 著色 語言 通用 集成 方法 | ||
1.一種跨平臺模塊化的著色器語言通用集成方法,其特征在于,包括以下步驟,
步驟一,定義宏定義解析文件的格式與語法,創建宏定義解析文件;
步驟二,創建語法解析器Shader-X,使用Shader-X解析器預編譯著色器文件,所述Shader-X解析器包括著色器語法以及預編譯指令;
步驟三,解析宏定義解析文件,生成宏定義結果集合,根據宏定義結果集合生成宏定義結果有序列表;
步驟四,分別計算宏定義結果有序列表的哈希值,分別根據宏定義結果生成宏定義結果所對應平臺的著色器文件,通過Shader-X解析器將著色器文件預編譯為二進制文件,并通過宏定義結果有序列表的哈希值以及平臺對二進制文件進行標記;
所述根據宏定義結果生成宏定義結果所對應平臺的著色器文件是指首先通過GLSLang編譯器將GLSL程序編譯成SPIR-V文件,然后通過SPIRV-Cross生成平臺所對應的著色器文件,
所述平臺包括且不限于Windows平臺、iOS平臺、macOS平臺;
步驟五,渲染程序根據宏定義結果的哈希值以及平臺,定位二進制文件并執行,所述定位二進制文件是根據宏定義結果有序列表的哈希值以及平臺匹配相應的二進制文件。
2.根據權利要求1所述的一種跨平臺模塊化的著色器語言通用集成方法,其特征在于,所述通過Shader-X解析器將著色器文件預編譯為二進制文件還包括根據預編譯指令進行模塊引入和模塊引入重復性檢查,所述預編譯指令包括模塊引入的指令以及模塊引入重復性檢查的指令,所述模塊引入是指通過模塊引入的指令#include調用具有特定功能的模塊,所述模塊引入重復性檢查是指通過模塊引入重復性檢查的指令#pragma once檢查所引入模塊是否重復引用。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于大連東軟信息學院,未經大連東軟信息學院許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111371752.5/1.html,轉載請聲明來源鉆瓜專利網。





