【技术实现步骤摘要】
一种跨平台模块化的着色器语言通用集成方法
[0001]本专利技术涉及图像渲染
,尤其涉及一种跨平台模块化的着色器语言通用集成方法。
技术介绍
[0002]图像渲染是将三维的光能传递处理转换为一个二维图像的过程。场景和实体用三维形式表示,更接近于现实世界,便于操纵和变换,而图形的显示设备大多是二维的光栅化显示器和点阵化打印机。从三维实体场景的表示N维光栅和点阵化的表示就是图像渲染——即光栅化。光栅显示器可以看作是一个像素矩阵,在光栅显示器上显示的任何一个图形,实际上都是一些具有一种或多种颜色和灰度象素的集合。
[0003]着色器语言Shader Language目前主要有3种语言:基于OpenGL的OpenGL Shading Language,简称GLSL;基于DirectX的High Level Shading Language,简称HLSL;还有Metal语言,具体如下:
[0004]OpenGL(全写Open Graphics Library)是一个定义了跨编程语言、跨平台的编程接口规格的专业图形 ...
【技术保护点】
【技术特征摘要】
1.一种跨平台模块化的着色器语言通用集成方法,其特征在于,包括以下步骤,步骤一,定义宏定义解析文件的格式与语法,创建宏定义解析文件;步骤二,创建语法解析器Shader
‑
X,使用Shader
‑
X解析器预编译着色器文件,所述Shader
‑
X解析器包括着色器语法以及预编译指令;步骤三,解析宏定义解析文件,生成宏定义结果集合,根据宏定义结果集合生成宏定义结果有序列表;步骤四,分别计算宏定义结果有序列表的哈希值,分别根据宏定义结果生成宏定义结果所对应平台的着色器文件,通过Shader
‑
X解析器将着色器文件预编译为二进制文件,并通过宏定义结果有序列表的哈希值以及平台对二进制文件进行标记;所述根据宏定义结果生成宏定义结果所对应平台的着色器文件是指首先通过GLSLang编译器将GLSL程序编译成SPIR
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。