虚拟对象的毛发渲染方法、装置及设备制造方法及图纸

技术编号:32518255 阅读:15 留言:0更新日期:2022-03-02 11:17
本申请公开了一种虚拟对象的毛发渲染方法、装置及设备,涉及渲染技术领域,整个渲染过程能够控制虚拟对象模型的毛发长度,使得渲染出的毛发具有变化和走向,提高虚拟对象模型的毛发渲染效果。其中方法包括:针对虚拟对象模型,利用顶点绘制修改器中的资源通道来存储毛发变化的属性数据,并将毛发变化的属性数据结合所述虚拟对象模型的顶点资源数据导出至模型数据,该虚拟对象模型的顶点资源数据记录有顶点位置信息和各个顶点位置上的纹理资源信息,传输模型数据至渲染引擎,以使得渲染引擎根据模型数据中毛发变化的属性数据计算毛发的顶点偏移信息,并沿着毛发的顶点偏移信息对各个顶点位置上的纹理资源信息进行多层毛发渲染。渲染。渲染。

【技术实现步骤摘要】
虚拟对象的毛发渲染方法、装置及设备


[0001]本申请涉及渲染
,尤其是涉及到一种虚拟对象的毛发渲染方法、装置及设备。

技术介绍

[0002]随着计算机图形学技术的飞速发展,虚拟对象越来越多被应用至教育类应用程序的游戏或动画制作当中,教育类应用程序的种类也不断增多。为了能够吸引更多的儿童用户,提升虚拟对象制作的真实感必不可少,而动物类虚拟对象的毛发制作因其光照复杂,数量众多,物理效果不好抽象等原因,一直是实时图形学的难题。在早期,只能通过若干面片替代,后来随着硬件技术的提升,发展出了基于经验模型和基于物理构建毛发的三维模型,并基于三维模型来对虚拟对象的毛发进行渲染。
[0003]具体在针对虚拟对象进行毛发渲染过程中,通常会将三维模型进行多层渲染,每一层都通过一个杂色图往法线方向扩展,每次扩展后都按照一定的单位值透空贴图,这样每渲染一层,就会减少固定数的渲染,中远距离就会产生毛发由粗到细的展示效果。然而,相关技术的虚拟对象在毛发渲染过程中,局部毛发使用固定长度的渲染方式,导致渲染出的毛发长短比较统一,并不具有毛发长短功能的走向性,使得毛发渲染效果达不到理想效果。

技术实现思路

[0004]有鉴于此,本申请提供了一种虚拟对象的毛发渲染方法、装置及设备,主要目的在于解决现有技术中渲染出的毛发长短比较统一,并不具有毛发长短功能的走向性,使得毛发渲染效果达不到理想效果的问题。
[0005]根据本申请的第一个方面,提供了一种虚拟对象的毛发渲染方法,应用于制作端,包括:
[0006]针对虚拟对象模型,利用顶点绘制修改器中的资源通道来存储毛发变化的属性数据;
[0007]将所述毛发变化的属性数据结合所述虚拟对象模型的顶点资源数据导出至模型数据,所述虚拟对象模型的顶点资源数据记录有顶点位置信息和各个顶点位置上的纹理资源信息;
[0008]传输所述模型数据至渲染引擎,以使得所述渲染引擎根据所述模型数据中毛发变化的属性数据计算毛发的顶点偏移信息,并沿着所述毛发的顶点偏移信息对所述各个顶点位置上的纹理资源信息进行多层毛发渲染。
[0009]进一步地,所述毛发变化的属性数据包括毛发走势数据和毛发长度数据,所述针对虚拟对象模型,利用顶点绘制修改器中的资源通道来存储毛发变化的属性数据,具体包括:
[0010]针对虚拟对象模型设置第一顶点绘制修改器,使用所述第一绘制修改器中顶点颜
色通道的颜色偏移值来存储毛发走势数据;
[0011]针对虚拟对象模型设置第二顶点绘制修改器,使用所述第二绘制修改器中顶点透明度通道的颜色渐变值来存储毛发长度数据。
[0012]进一步地,所述针对虚拟对象模型设置第一顶点绘制修改器,使用所述第一绘制修改器中顶点颜色通道的颜色偏移值来存储毛发走势数据,具体包括:
[0013]针对虚拟对象模型设置第一顶点绘制修改器,使用所第一顶点绘制修改器添加虚拟对象模型中毛发的颜色变化;
[0014]根据所述虚拟对象模型中毛发的颜色变化,确定顶点颜色通道的颜色偏移值,并使用所述颜色偏移值来存储毛发走势数据。
[0015]进一步地,所述针对虚拟对象模型设置第二顶点绘制修改器,使用所述第二绘制修改器中顶点透明度通道的颜色渐变值来存储毛发长度数据,具体包括:
[0016]针对虚拟对象模型设置第二顶点绘制修改器,使用所述第二顶点绘制修改器添加虚拟对象模型中毛发的长度变化;
[0017]根据所述虚拟对象模型中毛发的长度变化,确定顶点透明度通道的颜色渐变值,并使用所述颜色渐变值来存储毛发长度数据。
[0018]进一步地,在所述将所述毛发变化的属性数据结合所述虚拟对象模型的顶点资源数据导出至模型数据之前,所述方法还包括:
[0019]针对虚拟对象模型添加顶点,确定虚拟对象模型的顶点位置;
[0020]根据所述虚拟对象模型的顶点位置,将所述对象模型按照贴图纹理坐标展开为贴图资源的纹理坐标信息和法线方向信息,汇总得到各个顶点位置上的纹理资源信息;
[0021]结合所述对象模型的顶点位置和所述各个顶点位置上的纹理资源信息,制作虚拟对象模型的顶点资源数据。
[0022]根据本申请的第二个方面,提供了一种虚拟对象的毛发渲染方法,应用于渲染引擎端,包括:
[0023]接收模型数据,并读取所述模型数据中虚拟对象模型的顶点资源数据和毛发变化的属性数据,所述虚拟对象模型的顶点资源数据记录有顶点位置信息和各个顶点位置上的纹理资源信息;
[0024]根据所述模型数据中毛发变化的属性数据计算毛发的顶点偏移信息,所述顶点偏移信息包括虚拟对象模型的毛发方向信息和毛发长度信息;
[0025]按照所述毛发长度信息对所述各个顶点位置上的纹理资源信息沿着所述毛发方向信息进行多层毛发渲染。
[0026]进一步地,所述毛发变化的属性数据包括毛发走势数据和毛发长度数据,所述毛发走势数据包括毛发在不同颜色通道的的颜色值,所述毛发长度数据包括毛发在不同透明程度上灰度值,所述根据所述模型数据中毛发变化的属性数据计算毛发的顶点偏移信息,具体包括:
[0027]根据所述毛发走势数据中毛发在不同颜色通道上颜色值和顶点位置坐标,计算沿着法线方向所形成虚拟对象模型的毛发方向信息;
[0028]将所述毛发长度数据中毛发在不同透明度上的灰度值映射为虚拟对象模型的毛发长度信息。
[0029]进一步地,所述按照所述毛发长度信息对所述各个顶点位置上的纹理资源信息沿着所述毛发方向信息进行多层毛发渲染,具体包括:
[0030]根据所述毛发长度信息,确定毛发渲染的渲染层数;
[0031]针对每层毛发渲染,在顶点着色器中读入各个顶点位置上的纹理资源信息沿着所述毛发方向信息进行外扩绘制,确定每层毛发渲染后的顶点偏移位置信息;
[0032]根据所述毛发渲染的渲染层数,在所述每层毛发渲染后的顶点偏移位置基础上,重复执行多层毛发渲染。
[0033]进一步地,在所述针对每层毛发渲染,在顶点着色器中读入各个顶点位置上的纹理资源信息沿着所述毛发方向信息进行外扩绘制,确定每层毛发渲染后的顶点偏移位置信息之后,所述方法还包括:
[0034]针对所述每层毛发渲染后的顶点偏移位置信息,在片元着色器中对所述虚拟对象模型在世界空间中的各项异性信息进行拟合,并利用拟合后的颜色信息进行像素填充,得到每层毛发渲染数据;
[0035]根据所述毛发渲染的渲染层数,在所述每层毛发渲染数据基础上,重复执行多层毛发渲染。
[0036]进一步地,在所述针对所述每层毛发渲染后的顶点偏移位置信息,在片元着色器中对所述虚拟对象模型在世界空间中的各项异性信息进行拟合,并利用拟合后的颜色信息进行像素填充,得到每层毛发渲染数据之前,所述方法还包括:
[0037]获取游戏场景中环境光照信息和高光信息;
[0038]利用所述游戏场景中环境光照信息和高光信息进行插值得到的各个片元的法线信息,确定所述虚拟对象模型在世界空本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种虚拟对象的毛发渲染方法,其特征在于,应用于制作端,包括:针对虚拟对象模型,利用顶点绘制修改器中的资源通道来存储毛发变化的属性数据;将所述毛发变化的属性数据结合所述虚拟对象模型的顶点资源数据导出至模型数据,所述虚拟对象模型的顶点资源数据记录有顶点位置信息和各个顶点位置上的纹理资源信息;传输所述模型数据至渲染引擎,以使得所述渲染引擎根据所述模型数据中毛发变化的属性数据计算毛发的顶点偏移信息,并沿着所述毛发的顶点偏移信息对所述各个顶点位置上的纹理资源信息进行多层毛发渲染。2.根据权利要求1所述的方法,其特征在于,所述毛发变化的属性数据包括毛发走势数据和毛发长度数据,所述针对虚拟对象模型,利用顶点绘制修改器中的资源通道来存储毛发变化的属性数据,具体包括:针对虚拟对象模型设置第一顶点绘制修改器,使用所述第一绘制修改器中顶点颜色通道的颜色偏移值来存储毛发走势数据;针对虚拟对象模型设置第二顶点绘制修改器,使用所述第二绘制修改器中顶点透明度通道的颜色渐变值来存储毛发长度数据。3.根据权利要求2所述的方法,其特征在于,所述针对虚拟对象模型设置第一顶点绘制修改器,使用所述第一绘制修改器中顶点颜色通道的颜色偏移值来存储毛发走势数据,具体包括:针对虚拟对象模型设置第一顶点绘制修改器,使用所第一顶点绘制修改器添加虚拟对象模型中毛发的颜色变化;根据所述虚拟对象模型中毛发的颜色变化,确定顶点颜色通道的颜色偏移值,并使用所述颜色偏移值来存储毛发走势数据。4.根据权利要求2所述的方法,其特征在于,所述针对虚拟对象模型设置第二顶点绘制修改器,使用所述第二绘制修改器中顶点透明度通道的颜色渐变值来存储毛发长度数据,具体包括:针对虚拟对象模型设置第二顶点绘制修改器,使用所述第二顶点绘制修改器添加虚拟对象模型中毛发的长度变化;根据所述虚拟对象模型中毛发的长度变化,确定顶点透明度通道的颜色渐变值,并使用所述颜色渐变值来存储毛发长度数据。5.根据权利要求1

4中任一项所述的方法,其特征在于,在所述将所述毛发变化的属性数据结合所述虚拟对象模型的顶点资源数据导出至模型数据之前,所述方法还包括:针对虚拟对象模型添加顶点,确定虚拟对象模型的顶点位置;根据所述虚拟对象模型的顶点位置,将所述对象模型按照贴图纹理坐标展开为贴图资源的纹理坐标信息和法线方向信息,汇总得到各个顶点位置上的纹理资源信息;结合所述对象模型的顶点位置和所述各个顶点位置上的纹理资源信息,制作虚拟对象模型的顶点资源数据。6.一种虚拟对象的毛发渲染方法,其特征在于,应用于渲染引擎端,包括:接收模型数据,并读取所述模型数据中虚拟对象模型的顶点资源数据和毛发变化的属性数据,所述虚拟对象模型的顶点资源数据记录有顶点位置信息和各个顶点位置上的纹理
资源信息;根据所述模型数据中毛发变化的属性数据计算毛发的顶点偏移信息,所述顶点偏移信息包括虚拟对象模型的毛发方向信息和毛发长度信息;按照所述毛发长度信息对所述各个顶点位置上的纹理资源信息沿着所述毛发方向信息进行多层毛发渲染。7.根据权利要求6所述的方法,其特征在于,所述毛发变化的属性数据包括毛发走势数据和毛发长度数据,所述毛发走势数据包括毛发在不同颜色通道的的颜色值,所述毛发长度数据包括毛发在不同透明程度上灰度值,所述根据所述模型数据中毛发变化的属性数据计算毛发的顶点偏移信...

【专利技术属性】
技术研发人员:赵建
申请(专利权)人:洪恩完美北京教育科技发展有限公司
类型:发明
国别省市:

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

1