应用程序打包方法、装置及电子设备制造方法及图纸

技术编号:27128906 阅读:50 留言:0更新日期:2021-01-25 19:54
本发明专利技术提供了应用程序打包方法、装置及电子设备。其中,该方法包括:响应针对于目标材质的Shader特征定义操作,确定Shader特征对应的目标静态分支变体;响应针对于应用程序的打包操作,确定应用程序使用的目标材质;对于每个目标材质,均获取对应的目标静态分支变体的目标Shader变体文件,将目标材质的Shader文件替换为目标Shader变体文件;基于替换Shader文件后的目标材质,打包应用程序。本发明专利技术中,通过为每个材质配置不同的Shader变体文件,并利用该Shader变体文件替换材质中原Shader文件,与原Shader文件相比,Shader变体文件的存储量较小,从而提高了编译效率。从而提高了编译效率。从而提高了编译效率。

【技术实现步骤摘要】
应用程序打包方法、装置及电子设备


[0001]本专利技术涉及应用程序制作
,尤其是涉及一种应用程序打包方法、装置及电子设备。

技术介绍

[0002]Unity是一种应用程序(例如,游戏)开发中常使用的创作引擎,通过Unity可以制作Shader(着色器)和meterial(材质)。Shader可以理解为一段小程序,负责将模型顶点数据以指定的方式和输入的贴图或颜色等组合起来,组合起来的数据可以在屏幕上进行绘制呈现。而组合起来的数据打包存储在一起,就是一个meterial(材质)。之后,便可以将材质赋予三维对象,实现对三维对象的渲染。
[0003]开发人员常使用Uber Shader来进行Shader开发。例如,某Uber Shader里面有“是否使用法线贴图”这个选项分支,则在材质编辑器上提供“是否使用法线贴图”这一勾选项以供美术选择,通过在材质编辑器上勾选对应选项,Shader会使用不同的分支路径。
[0004]上述“是否使用法线题图”即为一个Shader的静态分支,在Unity中叫做Shader特性(或Shader特征或本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种应用程序打包方法,其特征在于,通过电子设备制作应用程序,所述电子设备预存有Shader变体文件,其中,所述Shader变体文件包含由Shader特征对应的静态分支组合得到的静态分支变体;所述方法包括:响应针对于目标材质的Shader特征定义操作,确定所述目标材质的Shader特征对应的目标静态分支变体;其中,所述Shader特征包括至少两个Shader的静态分支;响应针对于所述应用程序的打包操作,确定所述应用程序使用的目标材质;对于每个所述目标材质,均获取所述目标材质对应的目标静态分支变体的目标Shader变体文件,将所述目标材质的Shader文件替换为所述目标Shader变体文件;基于替换Shader文件后的所述目标材质,打包所述应用程序。2.根据权利要求1所述的应用程序打包方法,其特征在于,所述方法还包括:响应针对于Shader特征的变体标识添加操作,为所述Shader特征对应的静态分支添加预设的变体标识,得到目标静态分支;对所述目标静态分支中的静态分支进行排列组合,生成Shader变体文件。3.根据权利要求2所述的应用程序打包方法,其特征在于,为所述Shader特征对应的静态分支添加预设的变体标识的步骤,包括:在所述Shader特征对应的静态分支的起始位置设置第一变体标识;在所述Shader特征对应的静态分支的结束位置设置第二变体标识。4.根据权利要求2所述的应用程序打包方法,其特征在于,对所述目标静态分支中的静态分支进行排列组合,生成Shader变体文件的步骤,包括:对所述目标静态分支中的静态分支进行排列组合,得到每个组合对应的Shader静态变体;对于每个所述Shader静态变体,均根据所述Shader静态变体包含的Shader生成Shader变体文件;其中,所述Shader变体文件的文件名称包含Shader静态变体包含的Shader的Shader名称。5.根据权利要求1所述的应用程序打包方法,其特征在于,所述Shader变体文件的文件名称包括:主文件名、预设标识符、分支开关名称和...

【专利技术属性】
技术研发人员:谢乃闻
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1