【技术实现步骤摘要】
着色器代码的编译方法、装置、计算机设备及存储介质
[0001]本公开涉及计算机
,具体而言,涉及一种着色器代码的编译方法、装置、计算机设备及存储介质。
技术介绍
[0002]目前,随着设备平台的发展,出现了包括微软的PC、苹果的Metal、安卓的Adreno和Mali的多种平台。
[0003]相关技术中,开发者往往需要针对各平台分别编写一套着色器代码,并在编译后生成用于在各平台下分别进行场景渲染的场景渲染数据,这种方式所花费的时间成本和人力成本较高,效率低下。
技术实现思路
[0004]本公开实施例至少提供一种着色器代码的编译方法、装置、计算机设备及存储介质。
[0005]第一方面,本公开实施例提供了一种着色器代码的编译方法,包括:
[0006]获取待编译的着色器代码;其中,所述着色器代码中包含适用于第一渲染平台的第一目标着色器代码、适用于第二渲染平台的第二目标着色器代码,以及同时适用于所述第一渲染平台和所述第二渲染平台的第三目标着色器代码;所述第一渲染平台和所述第二渲染平台用于 ...
【技术保护点】
【技术特征摘要】
1.一种着色器代码的编译方法,其特征在于,包括:获取待编译的着色器代码;其中,所述着色器代码中包含适用于第一渲染平台的第一目标着色器代码、适用于第二渲染平台的第二目标着色器代码,以及同时适用于所述第一渲染平台和所述第二渲染平台的第三目标着色器代码;所述第一渲染平台和所述第二渲染平台用于在同一类型的操作系统下进行内容渲染;所述第三目标着色器代码指代的所述第一渲染平台的第一几何缓冲区中的渲染特征信息,与指代的所述第二渲染平台的第二几何缓冲区中的渲染特征信息相同;基于所述第一目标着色器代码和所述第三目标着色器代码,生成与所述第一渲染平台对应的第一编译结果;以及,基于所述第二目标着色器代码和所述第三目标着色器代码,生成与所述第二渲染平台对应的第二编译结果。2.根据权利要求1所述的方法,其特征在于,所述第一几何缓冲区中的渲染特征信息包括物体自发光信息、雾效信息、法线信息、粗糙度信息、金属渲染信息、反射率信息、遮挡信息、环境信息、阴影信息、雾效强度信息;所述第二几何缓冲区中的渲染特征信息包括物体自发光信息、雾效信息、法线信息、粗糙度信息、金属渲染信息、反射率信息、遮挡信息、环境信息、深度信息。3.根据权利要求2所述的方法,其特征在于,所述第三目标着色器代码指代的渲染特征信息包括物体自发光信息、雾效信息、法线信息、粗糙度信息、金属渲染信息、反射率信息、遮挡信息,所述第一目标着色器代码指代的渲染特征信息包括环境信息、阴影信息、雾效强度信息,所述第二目标着色器代码指代的渲染特征信息包括环境信息和深度信息。4.根据权利要求1所述的方法,其特征在于,所述第一目标着色器代码和所述第二目标着色器代码位于所述待编译的着色器代码中的目标代码段落,所述目标代码段落中的着色器代码通过预处理指令Pragma进行标注,以指示在所述目标代码段落中分别执行所述第一目标着色器代码的编译,以及所述第二目标着色器代码的编译。5.根据权利要求1所述的方法,其特征在于,所述第一渲染平台为安卓操作系统的Adreno平台,所述第一编译结果用于在所述Adreno平台进行延迟渲染;所述第二渲染平台为安卓操作系统的Mali平台,所述第二编译...
【专利技术属性】
技术研发人员:陈晓威,
申请(专利权)人:北京字跳网络技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。