[发明专利]一种跨平台模块化的着色器语言通用集成方法在审

专利信息
申请号: 202111371752.5 申请日: 2021-11-18
公开(公告)号: CN114077433A 公开(公告)日: 2022-02-22
发明(设计)人: 刘歆宁 申请(专利权)人: 大连东软信息学院
主分类号: G06F8/41 分类号: G06F8/41;G06T15/00;G06T15/50
代理公司: 大连至诚专利代理事务所(特殊普通合伙) 21242 代理人: 王丹;陈义华
地址: 116000 辽*** 国省代码: 辽宁;21
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 平台 模块化 着色 语言 通用 集成 方法
【说明书】:

发明公开了一种跨平台模块化的着色器语言通用集成方法,包括,定义宏定义解析文件的格式与语法,创建宏定义解析文件;创建语法解析器Shader‑X,使用Shader‑X解析器预编译着色器文件;解析宏定义解析文件,生成宏定义结果集合,根据宏定义结果集合生成宏定义结果有序列表;分别计算宏定义结果有序列表的哈希值,分别根据宏定义结果生成宏定义结果所对应平台的着色器文件,通过Shader‑X解析器将着色器文件预编译为二进制文件,并通过宏定义结果的哈希值以及平台对二进制文件进行标记;渲染程序根据宏定义结果有序列表的哈希值以及平台,定位二进制文件并执行。实现同一着色器代码可在不同平台使用,无需在线编译,支持模块化编程方案,提高着色器编程效率。

技术领域

本发明涉及图像渲染技术领域,尤其涉及一种跨平台模块化的着色器语言通用集成方法。

背景技术

图像渲染是将三维的光能传递处理转换为一个二维图像的过程。场景和实体用三维形式表示,更接近于现实世界,便于操纵和变换,而图形的显示设备大多是二维的光栅化显示器和点阵化打印机。从三维实体场景的表示N维光栅和点阵化的表示就是图像渲染——即光栅化。光栅显示器可以看作是一个像素矩阵,在光栅显示器上显示的任何一个图形,实际上都是一些具有一种或多种颜色和灰度象素的集合。

着色器语言Shader Language目前主要有3种语言:基于OpenGL的OpenGL ShadingLanguage,简称GLSL;基于DirectX的High Level Shading Language,简称HLSL;还有Metal语言,具体如下:

OpenGL(全写Open Graphics Library)是一个定义了跨编程语言、跨平台的编程接口规格的专业图形程序接口。它用于三维图像(二维亦可),是一个功能强大,调用方便的底层图形库。

DirectX(Direct eXtension,简称DX)是由微软公司创建的多媒体编程接口。由C++编程语言实现,遵循COM。被广泛适用于Microsoft Windows、Microsoft XBOX、MicrosoftXBOX 360和Microsoft XBOX ONE电子游戏开发,并且只能支持这些平台。

Metal提供对图形处理器(GPU)的接近直接访问,能最大程度地发挥iOS、macOS和Apple tvOS app中的图形和计算潜能。Metal构建于易用的低开销架构之上,而且提供预编译的GPU着色器和精细的资源控制,并支持多线程处理。目前,在图像渲染API中,不同平台分别对应了不同的着色器语言(Shader Language),这些着色语言不兼容,如:Windows平台使用DirectX,其他平台基本都是基于OpenGL,移动端平台出于性能考虑使用GLSL的一个子集——GLES,除此之外,Metal及Vulkan等API也应运而生。如此众多的图形API接口都提供了各自的着色器语言,在进行跨平台开发时,同一个功能需要针对多个平台编写多份着色器程序,使得编程效率低下。

为了解决跨平台的渲染问题,目前比较主流的的解决方案为编写GLSL程序,再利用glslang编译器将GLSL编译成一种“中间表示语言”SPIR-V,再利用SPIRV-Cross反编译为各个平台的可使用的Shader,如GLSL/HLSL/MSL等。此方案利用SPIR-V作为中间语言编写一份着色器程序,以实现跨平台。

现有技术存在以下缺陷:第一,将GLSL编译成SPIR-V有使用限制,即在实际的使用过程中,着色器需要根据宏定义设置参数,那么着色器程序只能根据传入的宏定义在线编译生成SPIR-V,然后再反编译为各个平台对应的Shader,这就需要有在线编译和反编译两个步骤,这使得整个渲染过程非常耗时,在渲染引擎中经常是无法直接使用的。第二,着色器不支持如C/C++这种高级语言的模块引入语法,这就导致在编写着色器时,底层共通的代码段不得不分布在各个着色器中,导致程序规模扩大时,难以维护。无法做到模块通用性。

发明内容

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连东软信息学院,未经大连东软信息学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202111371752.5/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top