一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

材质的渲染方法及装置、存储介质、电子装置与流程

2022-03-26 16:57:28 来源:中国专利 TAG:


1.本发明涉及计算机技术领域,具体而言,涉及一种材质的渲染方法及装置、存储介质、电子装置。


背景技术:

2.相关技术中,模型网格的法线信息决定了三角面的指向方向,用于计算和光照相关着色效果,在大多数风格化光影效果的cg影视或游戏作品中,3d美术师通常会手动调整模型法线信息配合着色方案达到预期光影渲染结果,最终覆盖原始网格法线信息或烘焙在法线贴图上作为存储介质。
3.在相关技术的游戏中,3d美术师一般采用法线编辑工具手工绘制法线信息,但是无法通过现有美术编辑工具达到法线分组,以“组”为单位精确调整法线信息并单独存储法线信息为单独文件供后续使用。其次,风格化的光影往往需要从更为光滑的模型网格“法线转写”到当前使用的模型网格上。再次,通过法线贴图来存储法线信息有一定存储空间和渲染消耗。
4.在相关技术的法线编辑工具无法满足高效的法线编辑及特定角度法线的形成,还会额外占用纹理贴图带来的存储和渲染压力。
5.针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。


技术实现要素:

6.本发明实施例提供了一种材质的渲染方法及装置、存储介质、电子装置。
7.根据本发明的一个实施例,提供了一种材质的渲染方法,包括:根据目标模型的结构走势选择待编辑的初始法线组,其中,所述初始法线组包括多个目标模型顶点的法线信息;基于指定坐标系的指定轴向编辑所述初始法线组,得到中间法线组;对所述中间法线组进行转换,得到目标法线组;基于所述目标法线组将所述目标模型的法线信息转换为顶点色信息,其中,所述顶点色信息用于存储所述目标法线组的法线信息;采用所述顶点色信息渲染所述目标模型的风格化材质。
8.可选的,对所述中间法线组进行转换,得到目标法线组,包括:构建自定义球形,并定位所述自定义球形的球心;针对多个目标模型顶点的每个目标模型顶点,计算所述目标模型顶点和所述球心的归一化向量;将所述归一化向量转换为归一化法线,按照预设比例对所述归一化法线和所述中间法线组中的对应法线进行插值,得到第一目标法线组。
9.可选的,对所述中间法线组进行转换,得到目标法线组,包括:针对多个目标模型顶点的每个目标模型顶点,以所述目标模型顶点为中心进行扩散,并选择扩散区域内的相邻顶点;将所述相邻顶点的法线信息和对应目标模型顶点在所述中间法线组内的法线信息进行累加,得到第二目标法线组。
10.可选的,对所述中间法线组进行转换,得到目标法线组,包括:确定第一转换模型,将所述目标模型和所述第一转换模型嵌套在同一个坐标原点;针对目标模型的每个目标模
型顶点,遍历所述第一转换模型的每个顶点,并计算当前顶点与所述目标模型顶点之间的第一顶点距离;选择第一顶点距离最近的指定顶点的法线信息覆盖对应目标模型顶点在所述中间法线组内的法线信息,得到第三目标法线组。
11.可选的,基于所述目标法线组将所述目标模型的法线信息转换为顶点色信息包括:将所述目标法线组内的法线信息转换为所述目标模型的顶点色信息;确定第二转换模型,采用所述第二转换模型的顶点色信息覆盖所述目标模型的顶点色信息,并将将覆盖后的顶点色信息的通道信息转化为模型uv信息。
12.可选的,采用所述第二转换模型的顶点色信息覆盖所述目标模型的顶点色信息包括:将所述目标模型和所述第二转换模型嵌套在同一个坐标原点;针对所述目标模型的每个目标模型顶点,遍历所述第二转换模型的每个顶点,并计算当前顶点与所述目标模型顶点之间的第二顶点距离;选择第二顶点距离最近的指定顶点的顶点色信息覆盖对应目标模型顶点的顶点色信息。
13.可选的,采用所述顶点色信息渲染所述目标模型的风格化材质包括:在物理引擎中导入所述目标模型;将所述顶点色信息转换为切线空间法线;基于所述切线空间法线在所述物理引擎中渲染所述目标模型,生成所述目标模型的风格化材质。
14.可选的,所述方法还包括:针对所述目标模型的每个目标模型顶点,计算与所述目标模型顶点相连接的所有三角面的法线平均值;将所述法线平均值确定为对应目标模型顶点的光滑法线;在所述目标模型的顶点属性中存储所述顶点色信息和所述光滑法线。
15.可选的,在在所述目标模型的顶点属性中存储所述顶点色信息和所述光滑法线之后,所述方法还包括:采用所述顶点色信息渲染所述目标模型的描边和角色变光,生成所述目标模型的风格化光影,以及采用所述光滑法线渲染光照模型,生成所述目标模型的平滑光影。
16.可选的,在对所述中间法线组进行转换,得到目标法线组之后,所述方法还包括:采用组法线标识和所述目标法线组生成法线文本;存储所述法线文本。
17.根据本发明的另一个实施例,提供了一种材质的渲染装置,包括:选择模块,用于根据目标模型的结构走势选择待编辑的初始法线组,其中,所述初始法线组包括多个目标模型顶点的法线信息;编辑模块,用于基于指定坐标系的指定轴向编辑所述初始法线组,得到中间法线组;第一转换模块,用于对所述中间法线组进行转换,得到目标法线组;第二转换模块,用于基于所述目标法线组将所述目标模型的法线信息转换为顶点色信息,其中,所述顶点色信息用于存储所述目标法线组的法线信息;渲染模块,用于采用所述顶点色信息渲染所述目标模型的风格化材质。
18.可选的,所述第一转换模块包括:定位单元,用于构建自定义球形,并定位所述自定义球形的球心;计算单元,用于针对多个目标模型顶点的每个目标模型顶点,计算所述目标模型顶点和所述球心的归一化向量;插值单元,用于将所述归一化向量转换为归一化法线,按照预设比例对所述归一化法线和所述中间法线组中的对应法线进行插值,得到第一目标法线组。
19.可选的,所述第一转换模块包括:选择单元,用于针对多个目标模型顶点的每个目标模型顶点,以所述目标模型顶点为中心进行扩散,并选择扩散区域内的相邻顶点;累加单元,用于将所述相邻顶点的法线信息和对应目标模型顶点在所述中间法线组内的法线信息
进行累加,得到第二目标法线组。
20.可选的,所述第一转换模块包括:嵌套单元,用于确定第一转换模型,将所述目标模型和所述第一转换模型嵌套在同一个坐标原点;计算单元,用于针对目标模型的每个目标模型顶点,遍历所述第一转换模型的每个顶点,并计算当前顶点与所述目标模型顶点之间的第一顶点距离;覆盖单元,用于选择第一顶点距离最近的指定顶点的法线信息覆盖对应目标模型顶点在所述中间法线组内的法线信息,得到第三目标法线组。
21.可选的,所述第二转换模块包括:转换单元,用于将所述目标法线组内的法线信息转换为所述目标模型的顶点色信息;处理单元,用于确定第二转换模型,采用所述第二转换模型的顶点色信息覆盖所述目标模型的顶点色信息,并将将覆盖后的顶点色信息的通道信息转化为模型uv信息。
22.可选的,所述处理单元包括:嵌套子单元,用于将所述目标模型和所述第二转换模型嵌套在同一个坐标原点;计算子单元,用于针对所述目标模型的每个目标模型顶点,遍历所述第二转换模型的每个顶点,并计算当前顶点与所述目标模型顶点之间的第二顶点距离;覆盖子单元,用于选择第二顶点距离最近的指定顶点的顶点色信息覆盖对应目标模型顶点的顶点色信息。
23.可选的,所述渲染模块包括:导入模块,用于在物理引擎中导入所述目标模型;转换模块,用于将所述顶点色信息转换为切线空间法线;渲染模块,用于基于所述切线空间法线在所述物理引擎中渲染所述目标模型,生成所述目标模型的风格化材质。
24.可选的,所述装置还包括:计算模块,用于针对所述目标模型的每个目标模型顶点,计算与所述目标模型顶点相连接的所有三角面的法线平均值;确定模块,用于将所述法线平均值确定为对应目标模型顶点的光滑法线;存储模块,用于在所述目标模型的顶点属性中存储所述顶点色信息和所述光滑法线。
25.可选的,所述装置还包括:第一生成模块,用于在所述存储模块在所述目标模型的顶点属性中存储所述顶点色信息和所述光滑法线之后,采用所述顶点色信息渲染所述目标模型的描边和角色变光,生成所述目标模型的风格化光影,以及采用所述光滑法线渲染光照模型,生成所述目标模型的平滑光影。
26.可选的,所述装置还包括:第二生成模块,用于在所述第一转换模块对所述中间法线组进行转换,得到目标法线组之后,采用组法线标识和所述目标法线组生成法线文本;存储模块,用于存储所述法线文本。
27.根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
28.根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
29.通过本发明,根据目标模型的结构走势选择待编辑的初始法线组,其中,初始法线组包括多个目标模型顶点的法线信息,基于指定坐标系的指定轴向编辑初始法线组,得到中间法线组,对中间法线组进行转换,得到目标法线组,基于目标法线组将目标模型的法线信息转换为顶点色信息,其中,顶点色信息用于存储目标法线组的法线信息,采用顶点色信息渲染目标模型的风格化材质,通过对法线分组后再进行转换,将法线信息转换为顶点色
信息存储,解决了相关技术不能对模型进行风格化光影渲染的技术问题,可以满足游戏厂商和玩家对于极致风格化的渲染效果,同时减少法线贴图带来的存储空间消耗和渲染消耗,提高了法线的编辑效率。
附图说明
30.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
31.图1是本发明实施例的一种材质的渲染计算机的硬件结构框图;
32.图2是根据本发明实施例的一种材质的渲染方法的流程示意图;
33.图3是本发明实施例采用球形化法线转换的示意图;
34.图4是本发明实施例平滑转换法线的示意图;
35.图5是本发明实施例法线转写的示意图;
36.图6是本发明实施例的完整流程图;
37.图7是本发明实施例的效果对比示意图;
38.图8是根据本发明实施例的一种材质的渲染装置的结构框图;
39.图9是本发明实施例的一种电子装置的结构图。
具体实施方式
40.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
41.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
42.实施例1
43.本技术实施例一所提供的方法实施例可以在手机、平板、服务器、计算机或者类似的电子终端中执行。以运行在计算机上为例,图1是本发明实施例的一种材质的渲染计算机的硬件结构框图。如图1所示,计算机可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)和用于存储数据的存储器104,可选地,上述计算机还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机的结构造成限定。例如,计算机还可包括比图1中所示更多或者更少的组件,或者具
有与图1所示不同的配置。
44.存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的一种材质的渲染方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。在本实施例中,处理器104用于响应人机交互指令和游戏策略,控制目标虚拟角色执行指定操作以完成游戏任务。存储器104用于存储电子游戏的程序脚本,配置信息,虚拟角色的属性信息等。
45.传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(network interface controller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(radio frequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。
46.可选的,输入输出设备108还包括人机交互屏幕用于通过人机交互接口获取人机交互指令,还用于呈现虚拟场景中的画面;
47.在本实施例中提供了一种材质的渲染方法,图2是根据本发明实施例的一种材质的渲染方法的流程示意图,如图2所示,该流程包括如下步骤:
48.步骤s202,根据目标模型的结构走势选择待编辑的初始法线组,其中,初始法线组包括多个目标模型顶点的法线信息;
49.可选的,目标模型可以是虚拟场景中的游戏角色,场景物等元素的三维模型。
50.可选的,本实施例的法线信息是三角形法线normal,代表当前三角形指向方向的三位向量信息,存储在顶点属性上,根据精度需要可以为float3。
51.步骤s204,基于指定坐标系的指定轴向编辑初始法线组,得到中间法线组;
52.在本实施例中,指定坐标系可以是世界坐标系,目标模型自身所在的坐标系,指定坐标系可以是x/y/z轴。
53.步骤s206,对中间法线组进行转换,得到目标法线组;
54.本实施例的法线组转换可以是法线精确偏移,球形法线,平滑法线,模型间法线拷贝等编辑转换方式,根据实际的光影渲染效果需求进行适配和选择。
55.步骤s208,基于目标法线组将目标模型的法线信息转换为顶点色信息,其中,顶点色信息用于存储目标法线组的法线信息;
56.本实施例中采用顶点色信息存储目标法线组的法线信息,可以解决通过法线贴图来存储法线信息导致的存储空间消耗和渲染消耗,提高硬件和渲染资源的利用率。
57.步骤s210,采用顶点色信息渲染目标模型的风格化材质。
58.通过上述步骤,根据目标模型的结构走势选择待编辑的初始法线组,其中,初始法线组包括多个目标模型顶点的法线信息,基于指定坐标系的指定轴向编辑初始法线组,得到中间法线组,对中间法线组进行转换,得到目标法线组,基于目标法线组将目标模型的法线信息转换为顶点色信息,其中,顶点色信息用于存储目标法线组的法线信息,采用顶点色
信息渲染目标模型的风格化材质,通过对法线分组后再进行转换,将法线信息转换为顶点色信息存储,解决了相关技术不能对模型进行风格化光影渲染的技术问题,可以满足游戏厂商和玩家对于极致风格化的渲染效果,同时减少法线贴图带来的存储空间消耗和渲染消耗,提高了法线的编辑效率。
59.在本实施例中,对中间法线组进行转换,包括对中间法线组进行精确偏移,球形法线,平滑法线,模型间法线拷贝等,在此通过不同的实施方式进行解释和说明。
60.在本实施例的一个实施方式中,对中间法线组进行转换,得到目标法线组,包括:构建自定义球形,并定位自定义球形的球心;针对多个目标模型顶点的每个目标模型顶点,计算目标模型顶点和球心的归一化向量;将归一化向量转换为归一化法线,按照预设比例对归一化法线和中间法线组中的对应法线进行插值,得到第一目标法线组。
61.本实施方式采用球形化法线的转换方式,通过构建自定义球心位置计算模型顶点和球心的归一化向量,作为法线信息和原始法线根据“百分比”进行插值,得到“球形化”法线信息。可以使用在圆球形物体变面的附属物,外壳等进行球形化法线转换,图3是本发明实施例采用球形化法线转换的示意图。
62.在本实施例的一个实施方式中,对中间法线组进行转换,得到目标法线组,包括:针对多个目标模型顶点的每个目标模型顶点,以目标模型顶点为中心进行扩散,并选择扩散区域内的相邻顶点;将相邻顶点的法线信息和对应目标模型顶点在中间法线组内的法线信息进行累加,得到第二目标法线组。
63.本实施方式采用平滑法线的转换方式,对选中的顶点扩散选取周围顶点法线信息并进行累加,最终得到归一化的法线信息,覆盖原始选中的顶点法线达到平滑法线的效果。在一个累加平均的示例中,待调整的目标模型顶点的法线为normal_ori,相邻顶点的周围法线为:normalarea[5]。采用以下算法进行累加平均,得到第二目标法线组。
[0064][0065]
图4是本发明实施例平滑转换法线的示意图,通过将部分和周围法线夹角过大的法线和周围法线进行平均,以减弱光影变化的转折。
[0066]
在本实施例的一个实施方式中,对中间法线组进行转换,得到目标法线组,包括:确定第一转换模型,将目标模型和第一转换模型嵌套在同一个坐标原点;针对目标模型的
每个目标模型顶点,遍历第一转换模型的每个顶点,并计算当前顶点与目标模型顶点之间的第一顶点距离;选择第一顶点距离最近的指定顶点的法线信息覆盖对应目标模型顶点在中间法线组内的法线信息,得到第三目标法线组。
[0067]
本实施方式采用法线转写的转换方式:将需要转写法线的目标模型作为“源”,被转写的第一转换模型作为“目的”,将两个模型套在同一坐标原点下,遍历“源”模型所有顶点位置再遍历“目的”模型的顶点位置信息并计算得到距离最近的顶点,最后将此“目的”顶点的法线覆盖对应的“源”顶点法线。
[0068]
图5是本发明实施例法线转写的示意图,第一转换模型为模型a(水壶外围的圆柱体模型),目标模型为模型b(水壶模型),将模型a的法线转写到模型b上。
[0069]
在另外一些实施方式中,还可以通过偏移的方式对中间法线组进行转换,如以累加的方式偏移,以累乘的方式偏移,以模型自身坐标系或世界坐标系进行偏移等。
[0070]
在本实施例中,基于目标法线组将目标模型的法线信息转换为顶点色信息包括:
[0071]
s11,将目标法线组内的法线信息转换为目标模型的顶点色信息;
[0072]
将归一化法线信息转换为模型顶点色信息,并最终将顶点色转化为切线空间法线供渲染使用,
[0073]
s12,确定第二转换模型,采用第二转换模型的顶点色信息覆盖目标模型的顶点色信息,并将将覆盖后的顶点色信息的通道信息转化为模型uv信息。
[0074]
将模型顶点色的通道信息转化为模型uv信息,顶点色rgb任意通道转为uv信息,可以实现绘制顶点色信息和存储顶点色信息的分离,突破顶点色通道数量的限制,降低解决依赖法线贴图存储法线信息所带来的存储和渲染压力。
[0075]
在一些示例中,采用第二转换模型的顶点色信息覆盖目标模型的顶点色信息包括:将目标模型和第二转换模型嵌套在同一个坐标原点;针对目标模型的每个目标模型顶点,遍历第二转换模型的每个顶点,并计算当前顶点与目标模型顶点之间的第二顶点距离;选择第二顶点距离最近的指定顶点的顶点色信息覆盖对应目标模型顶点的顶点色信息。
[0076]
在该示例中,模型间顶点色信息互相拷贝时,需要拷贝顶点色的模型(目标模型)为“源”,被拷贝顶点色的模型(第二转换模型)为“目的”,将两个模型套在同一坐标原点下,遍历“源”模型所有顶点位置再遍历“目的”模型的顶点位置信息并计算得到距离最近的顶点,最后将此“目的”顶点的顶点色覆盖对应的“源”顶点色。最后将顶点色rgb任意通道转为uv信息。
[0077]
在本实施例的一个实施方式中,采用顶点色信息渲染目标模型的风格化材质包括:在物理引擎中导入目标模型;将顶点色信息转换为切线空间法线;基于切线空间法线在物理引擎中渲染目标模型,生成目标模型的风格化材质。
[0078]
在本实施例的一个实施方式中,包括:针对目标模型的每个目标模型顶点,计算与目标模型顶点相连接的所有三角面的法线平均值;将法线平均值确定为对应目标模型顶点的光滑法线;在目标模型的顶点属性中存储顶点色信息和光滑法线。
[0079]
基于该实施方式,在目标模型的顶点属性中存储顶点色信息和光滑法线之后,还包括:采用顶点色信息渲染目标模型的描边和角色变光,生成目标模型的风格化光影,以及采用光滑法线渲染光照模型,生成目标模型的平滑光影。
[0080]
可选的,在对中间法线组进行转换,得到目标法线组之后,还包括:采用组法线标
识和目标法线组生成法线文本;存储法线文本。
[0081]
对已经分组的顶点法线id进行存储为文本格式,需要再次使用时加载此文本,得到对应的组法线id,以便再次编辑和多次调用。
[0082]
图6是本发明实施例的完整流程图,包括:进行法线分组,存储法线组,对分组后的法线进行编辑和转换,在符合效果预期的情况下,将法线转换为顶点色信息并存储,并在游戏引擎中渲染使用。
[0083]
本实施例的上述流程可以封装为模型网格法线编辑工具,该工具包括:法线编辑模块,顶点色编辑模块,材质模块。其中,法线编辑模块,用于实现精确偏移,球形法线,平滑法线,模型间法线拷贝,按组存储加载模型法线信息,以解决风格化光影所需的法线信息;顶点色编辑模块,用于实现模型间顶点色拷贝,法线和顶点色互转,顶点色rgb任意通道转为uv信息,以解决依赖法线贴图存储法线信息所带来的存储和渲染压力;材质模块,用于实时显示法线编辑最终效果风格化材质,配合实时显示模型法线编辑后的光影效果,自动载入项目shader并设置参数,使用编辑后的法线计算光影,实时观察渲染结果。
[0084]
本实施例根据卡通等渲染风格化光影规律,调整模型制作环节的法线编辑流程,提供高效的编辑工具及存储方式,达到原本3d美术师通过现有工具无法达到的制作成果和效率。最终模型存储两套法线信息以用于风格化光影及平滑的描边效果。最终模型网格顶点属性存储两套法线信息,一套为通过法线工具编辑后的法线(顶点色信息),一套为统一光滑组后的法线(光滑法线)存储在顶点色属性上,光滑法线为统一光滑组(模型顶点法线为所有相连接的三角面的法线的平均)后的法线,用于模型背面挤出绘制描边的法线使用,最终得到描边粗细均匀,没有分叉的描边效果。
[0085]
图7是本发明实施例的效果对比示意图,左边为目标法线组的渲染效果,右边为初始法线组的渲染效果,对于区域1,左边使用顶点色转法线后进行边光计算,过渡均匀,连续,而右边存储边光不均匀,不连续的现场;对于区域2,顶点色转为法线后进行描边,粗细均匀效果好,而右边的法线描边有分叉和不均匀的现场。
[0086]
采用本实施例的方案,可以满足游戏开发者和游戏玩家对于极致卡通风格化渲染效果的追求及减少法线贴图带来的渲染和制作的消耗。
[0087]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0088]
实施例2
[0089]
在本实施例中还提供了一种材质的渲染装置,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
[0090]
图8是根据本发明实施例的一种材质的渲染装置的结构框图,如图8所示,该装置包括:选择模块80,编辑模块82,第一转换模块84,第二转换模块86,渲染模块88,其中,
[0091]
选择模块80,用于根据目标模型的结构走势选择待编辑的初始法线组,其中,所述初始法线组包括多个目标模型顶点的法线信息;
[0092]
编辑模块82,用于基于指定坐标系的指定轴向编辑所述初始法线组,得到中间法线组;
[0093]
第一转换模块84,用于对所述中间法线组进行转换,得到目标法线组;
[0094]
第二转换模块86,用于基于所述目标法线组将所述目标模型的法线信息转换为顶点色信息,其中,所述顶点色信息用于存储所述目标法线组的法线信息;
[0095]
渲染模块88,用于采用所述顶点色信息渲染所述目标模型的风格化材质。
[0096]
可选的,所述第一转换模块包括:定位单元,用于构建自定义球形,并定位所述自定义球形的球心;计算单元,用于针对多个目标模型顶点的每个目标模型顶点,计算所述目标模型顶点和所述球心的归一化向量;插值单元,用于将所述归一化向量转换为归一化法线,按照预设比例对所述归一化法线和所述中间法线组中的对应法线进行插值,得到第一目标法线组。
[0097]
可选的,所述第一转换模块包括:选择单元,用于针对多个目标模型顶点的每个目标模型顶点,以所述目标模型顶点为中心进行扩散,并选择扩散区域内的相邻顶点;累加单元,用于将所述相邻顶点的法线信息和对应目标模型顶点在所述中间法线组内的法线信息进行累加,得到第二目标法线组。
[0098]
可选的,所述第一转换模块包括:嵌套单元,用于确定第一转换模型,将所述目标模型和所述第一转换模型嵌套在同一个坐标原点;计算单元,用于针对目标模型的每个目标模型顶点,遍历所述第一转换模型的每个顶点,并计算当前顶点与所述目标模型顶点之间的第一顶点距离;覆盖单元,用于选择第一顶点距离最近的指定顶点的法线信息覆盖对应目标模型顶点在所述中间法线组内的法线信息,得到第三目标法线组。
[0099]
可选的,所述第二转换模块包括:转换单元,用于将所述目标法线组内的法线信息转换为所述目标模型的顶点色信息;处理单元,用于确定第二转换模型,采用所述第二转换模型的顶点色信息覆盖所述目标模型的顶点色信息,并将将覆盖后的顶点色信息的通道信息转化为模型uv信息。
[0100]
可选的,所述处理单元包括:嵌套子单元,用于将所述目标模型和所述第二转换模型嵌套在同一个坐标原点;计算子单元,用于针对所述目标模型的每个目标模型顶点,遍历所述第二转换模型的每个顶点,并计算当前顶点与所述目标模型顶点之间的第二顶点距离;覆盖子单元,用于选择第二顶点距离最近的指定顶点的顶点色信息覆盖对应目标模型顶点的顶点色信息。
[0101]
可选的,所述渲染模块包括:导入模块,用于在物理引擎中导入所述目标模型;转换模块,用于将所述顶点色信息转换为切线空间法线;渲染模块,用于基于所述切线空间法线在所述物理引擎中渲染所述目标模型,生成所述目标模型的风格化材质。
[0102]
可选的,所述装置还包括:计算模块,用于针对所述目标模型的每个目标模型顶点,计算与所述目标模型顶点相连接的所有三角面的法线平均值;确定模块,用于将所述法线平均值确定为对应目标模型顶点的光滑法线;存储模块,用于在所述目标模型的顶点属性中存储所述顶点色信息和所述光滑法线。
[0103]
可选的,所述装置还包括:第一生成模块,用于在所述存储模块在所述目标模型的
顶点属性中存储所述顶点色信息和所述光滑法线之后,采用所述顶点色信息渲染所述目标模型的描边和角色变光,生成所述目标模型的风格化光影,以及采用所述光滑法线渲染光照模型,生成所述目标模型的平滑光影。
[0104]
可选的,所述装置还包括:第二生成模块,用于在所述第一转换模块对所述中间法线组进行转换,得到目标法线组之后,采用组法线标识和所述目标法线组生成法线文本;存储模块,用于存储所述法线文本。
[0105]
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
[0106]
实施例3
[0107]
本技术实施例还提供了一种电子装置,图9是本发明实施例的一种电子装置的结构图,如图9所示,包括处理器91、通信接口92、存储器93和通信总线94,其中,处理器91,通信接口92,存储器93通过通信总线94完成相互间的通信,存储器93,用于存放计算机程序;
[0108]
处理器91,用于执行存储器93上所存放的程序时,实现如下步骤:根据目标模型的结构走势选择待编辑的初始法线组,其中,所述初始法线组包括多个目标模型顶点的法线信息;基于指定坐标系的指定轴向编辑所述初始法线组,得到中间法线组;对所述中间法线组进行转换,得到目标法线组;基于所述目标法线组将所述目标模型的法线信息转换为顶点色信息,其中,所述顶点色信息用于存储所述目标法线组的法线信息;采用所述顶点色信息渲染所述目标模型的风格化材质。
[0109]
可选的,对所述中间法线组进行转换,得到目标法线组,包括:构建自定义球形,并定位所述自定义球形的球心;针对多个目标模型顶点的每个目标模型顶点,计算所述目标模型顶点和所述球心的归一化向量;将所述归一化向量转换为归一化法线,按照预设比例对所述归一化法线和所述中间法线组中的对应法线进行插值,得到第一目标法线组。
[0110]
可选的,对所述中间法线组进行转换,得到目标法线组,包括:针对多个目标模型顶点的每个目标模型顶点,以所述目标模型顶点为中心进行扩散,并选择扩散区域内的相邻顶点;将所述相邻顶点的法线信息和对应目标模型顶点在所述中间法线组内的法线信息进行累加,得到第二目标法线组。
[0111]
可选的,对所述中间法线组进行转换,得到目标法线组,包括:确定第一转换模型,将所述目标模型和所述第一转换模型嵌套在同一个坐标原点;针对目标模型的每个目标模型顶点,遍历所述第一转换模型的每个顶点,并计算当前顶点与所述目标模型顶点之间的第一顶点距离;选择第一顶点距离最近的指定顶点的法线信息覆盖对应目标模型顶点在所述中间法线组内的法线信息,得到第三目标法线组。
[0112]
可选的,基于所述目标法线组将所述目标模型的法线信息转换为顶点色信息包括:将所述目标法线组内的法线信息转换为所述目标模型的顶点色信息;确定第二转换模型,采用所述第二转换模型的顶点色信息覆盖所述目标模型的顶点色信息,并将将覆盖后的顶点色信息的通道信息转化为模型uv信息。
[0113]
可选的,采用所述第二转换模型的顶点色信息覆盖所述目标模型的顶点色信息包括:将所述目标模型和所述第二转换模型嵌套在同一个坐标原点;针对所述目标模型的每个目标模型顶点,遍历所述第二转换模型的每个顶点,并计算当前顶点与所述目标模型顶
点之间的第二顶点距离;选择第二顶点距离最近的指定顶点的顶点色信息覆盖对应目标模型顶点的顶点色信息。
[0114]
可选的,采用所述顶点色信息渲染所述目标模型的风格化材质包括:在物理引擎中导入所述目标模型;将所述顶点色信息转换为切线空间法线;基于所述切线空间法线在所述物理引擎中渲染所述目标模型,生成所述目标模型的风格化材质。
[0115]
可选的,所述方法还包括:针对所述目标模型的每个目标模型顶点,计算与所述目标模型顶点相连接的所有三角面的法线平均值;将所述法线平均值确定为对应目标模型顶点的光滑法线;在所述目标模型的顶点属性中存储所述顶点色信息和所述光滑法线。
[0116]
可选的,在在所述目标模型的顶点属性中存储所述顶点色信息和所述光滑法线之后,所述方法还包括:采用所述顶点色信息渲染所述目标模型的描边和角色变光,生成所述目标模型的风格化光影,以及采用所述光滑法线渲染光照模型,生成所述目标模型的平滑光影。
[0117]
可选的,在对所述中间法线组进行转换,得到目标法线组之后,所述方法还包括:采用组法线标识和所述目标法线组生成法线文本;存储所述法线文本。
[0118]
上述终端提到的通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0119]
通信接口用于上述终端与其他设备之间的通信。
[0120]
存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0121]
上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0122]
在本技术提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的材质的渲染方法。
[0123]
在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的材质的渲染方法。
[0124]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字
用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
[0125]
上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
[0126]
在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0127]
在本技术所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0128]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0129]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0130]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0131]
以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献