掌桥专利:专业的专利平台
掌桥专利
首页

一种模型生成方法、装置、存储介质及计算机设备

文献发布时间:2023-06-19 10:08:35


一种模型生成方法、装置、存储介质及计算机设备

技术领域

本申请涉及计算机图形技术领域,具体涉及一种模型生成方法、装置、存储介质及计算机设备。

背景技术

目前,用户界面中越来越多的使用到3D模型的效果,且对于3D模型的精度以及效果的稳定性要求都比较高。

在现有技术中,通常会采用传统的PBR(Physically-BasedRendering,基于物理的渲染)流程来实现带有光影效果的3D模型效果,其中,PBR流程主要包括以下步骤:在3Dmax等制作工具中制作高模模型及材质效果;根据高模模型拓扑低模模型;拆分纹理坐标,贴图烘焙压缩;游戏中实现;打灯光场景氛围等后期效果;程序处理:屏幕快照映射到用户界面或者面片上。

在上述PBR流程中,在3Dmax等制作工具中制成的高模模型能够满足用户界面对3D模型的精度要求,但是,若采用高模模型则会带来性能上的损失,而根据高模模型拓扑出的低模模型虽然可以降低性能上的损耗,但是在精度上就很难达到用户界面对3D模型的精度要求,且制作周期较长,消耗掉大部分的开发时间,同时,由于用户界面没有光照系统,只能被动地接受场景灯光来制作,这就导致了在实现过程中光照效果的不可控。

发明内容

本申请实施例提供一种模型生成方法、装置、存储介质及计算机设备,可以在满足用户界面对于模型精度的要求的同时,实现对光照效果的可控性。

本申请实施例提供一种模型生成方法,该模型生成方法包括:

获取高模模型的多张渲染图和模型高度信息;

根据预设简易模型、所述模型高度信息以及所述多张渲染图确定初始模型;

根据所述预设简易模型的光照系数和所述初始模型生成目标模型,所述目标模型用于渲染生成虚拟对象。

可选的,所述预设简易模型包括位于三维空间的多个目标点,所述根据预设简易模型、所述模型高度信息以及所述多张渲染图确定初始模型,包括:

根据所述模型高度信息确定所述目标点在二维平面的高度偏移纹理坐标;

根据所述目标点的高度偏移纹理坐标修正所述多张渲染图,并将修正后的所述多张渲染图贴在所述预设简易模型上,以得到初始模型。

可选的,所述所述根据所述模型高度信息确定所述目标点在二维平面的高度偏移纹理坐标包括:

确定所述预设简易模型上多个目标点中任意一个目标点的屏幕坐标偏移基本值;

根据所述目标点的屏幕坐标偏移基本值和所述模型高度信息确定所述目标点的高度偏移纹理坐标。

可选的,所述确定所述预设简易模型上多个目标点中任意一个目标点的屏幕坐标偏移基本值,包括:

获取所述简易模型在三维空间中的任意一个目标点的第一向量和对应的第二向量;

根据所述目标点的第一向量、切线向量和对应的第二向量确定所述目标点的二维偏移量;

根据距离系数和所述二维偏移量确定所述目标点的屏幕坐标偏移基本值,所述距离系数由预设公式确定。

可选的,所述获取三维空间中所述目标点的第一向量和对应的第二向量,包括:

获取三维空间中所述目标点到主相机方向的第一向量;

根据所述目标点的法线向量和切线向量确定所述目标点的第二向量。

可选的,所述根据所述目标点的第一向量、切线向量和对应的第二向量确定所述目标点的二维偏移量,包括;

计算所述目标点的第一向量和切线向量之间的第一点积以及所述目标点的第一向量和对应的第二向量之间的第二点积,以得到所述目标点的二维偏移量。

可选的,所述根据所述目标点的屏幕坐标偏移基本值和所述模型高度信息确定所述目标点的高度偏移纹理坐标,包括:

获取所述高模模型的多个纹理坐标,所述纹理坐标对应所述多个目标点中的一个;

根据所述多个纹理坐标、所述模型高度信息所述目标点的屏幕坐标偏移基本值确定所述目标点的高度偏移纹理坐标。

可选的,所述模型高度信息包括多个高度值,所述高度值对应所述多个目标点中的一个,所述根据所述多个纹理坐标、所述模型高度信息以及所述目标点的屏幕坐标偏移基本值确定所述目标点的高度偏移纹理坐标,包括:

将所述多个高度值二值化;

根据所述目标点对应的二值化后的高度值、预设高度控制比例、所述目标点的屏幕坐标偏移基本值和所述目标点对应的纹理坐标确定所述目标点的高度偏移纹理坐标。

可选的,所述根据所述目标点对应的二值化后的高度值、预设高度控制比例、所述目标点的屏幕坐标偏移基本值和所述目标点对应的纹理坐标确定所述目标点的高度偏移纹理坐标,包括:

计算所述目标点对应的二值化后高度值和预设高低控制比例的第一乘积;

计算所述第一乘积与所述目标点的屏幕坐标偏移基本值的第二乘积;

计算所述第二乘积与所述目标点对应的纹理坐标之间的第一和值,以得到所述目标点的高度偏移纹理坐标。

可选的,所述根据所述预设简易模型的光照系数和所述初始模型生成目标模型,包括:

确定所述预设简易模型上多个目标点中任意一个目标点的受光角度纹理坐标数值;

根据所述目标点的受光角度纹理坐标数值和预设光照贴图确定所述目标点的光照系数;

根据所述目标点的光照系数和所述初始模型生成目标模型。

可选的,所述确定所述预设简易模型上多个目标点中任意一个目标点的受光角度纹理坐标数值,包括:

根据所述目标点的第一向量和法线向量确定所述目标点的受光角度纹理坐标数值。

可选的,所述根据所述目标点的第一向量和法线向量确定所述目标点的受光角度纹理坐标数值,包括:

计算所述目标点的第一向量和法线向量之间的叉积;

根据所述叉积计算所述目标点的受光角度纹理坐标数值。

可选的,所述多张渲染图包括法线贴图,所述根据所述叉积计算所述目标点的受光角度纹理坐标数值,包括:

计算所述叉积与所述目标点的屏幕坐标以及所述法线贴图中与所述目标点对应的红色通道和绿色通道的法线值之间的第三乘积;

根据所述第一乘积和所述第三乘积确定所述目标点的受光角度纹理数值。

可选的,所述根据所述第一乘积和所述第三乘积确定所述目标点的受光角度纹理数值,包括:

计算所述第一乘积与所述目标点的屏幕坐标的第四乘积;

计算所述第三乘积与所述第四乘积之间的第二和值,以得到所述目标点的受光角度纹理坐标。

可选的,所述预设光照贴图包括多个光照值,所述多个光照值中的一个光照值对应所述多个目标点中任意一个目标点,所述根据所述目标点的受光角度纹理坐标数值和预设光照贴图确定所述目标点的光照系数,包括:

根据所述目标点的受光角度纹理坐标修正所述目标点对应的光照值,以得到所述目标点的光照系数。

可选的,所述根据所述每个目标点的光照系数和所述初始模型在生成目标模型,包括:

获取所述初始模型的金属度贴图、光滑度贴图和环境光遮蔽贴图;

利用所述光照系数修正所述金属度贴图、光滑度贴图和环境光遮蔽贴图,以生成目标模型。

本申请实施例还提供了一种模型生成装置,包括:

获取模块,用于获取高模模型的多张渲染图和模型高度信息;

确定模块,用于根据预设简易模型、所述模型高度信息以及所述多张渲染图确定初始模型;

生成模块,用于根据所述预设简易模型的光照系数和所述初始模型生成目标模型,所述目标模型用于渲染生成虚拟对象。

本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于处理器进行加载,以执行如上任一实施例所述的模型生成方法中的步骤。

本申请实施例还提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,执行如上任一实施例所述的模型生成方法中的步骤。

本申请实施例提供了一种模型处理方法、装置、存储介质及计算机设备,利用视差能够在简单的多边形、甚至一个平面上创建出3D细节的假象这一原理,根据高模模型的多张渲染图和模型高度信息使目标模型更大限度地还原出高模模型的细节,从而避免直接采用高模模型带来的性能损耗,且能够模拟用户界面视角或位置改变时产生的光照效果,使光照效果更加可控,也更为节省性能损耗。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的模型生成方法的场景示意图;

图2是本申请实施例提供的模型生成方法的流程示意图;

图3是本申请实施例提供的视差原理示意图;

图4是本申请实施例提供的第一向量的结构示意图;

图5是本申请实施例提供的切线空间的结构示意图;

图6是本申请实施例提供的距离系数的结构示意图;

图7是本申请实施例提供的屏幕坐标的结构示意图;

图8是本申请实施例提供的模型生成装置的结构示意图;

图9是本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施例提供一种模型生成方法、装置、存储介质及计算机设备。具体地,本实施例提供适用于模型生成装置的模型生成方法,该模型生成装置可以集成在计算机设备中。

该计算机设备可以为终端等设备,例如可以为手机、平板电脑、笔记本电脑、台式电脑等。

该计算机设备还可以为服务器等设备,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。

本申请实施例中,所谓模型生成方法,指的是根据高模模型和预设简易模型生成能够还原高模模型3D细节的目标模型,例如,请参阅图1,以该模型生成装置集成在计算机设备中为例,该计算机设备可以利用高模制作工具制作高模模型,并生成高模模型的多张渲染图和模型高度信息;获取高模模型的多张渲染图和模型高度信息;根据预设简易模型、模型高度信息以及多张渲染图确定初始模型;根据预设光照贴图、预设简易模型、模型高度信息和初始模型生成目标模型。

本实施例的预设简易模型可以是预先自动生成的、用于生成目标模型的最基本的模型单位,例如,该预设简易模型可以为面片。

请参阅图2,图2为本申请实施例提供的模型生成方法的流程示意图,该方法主要可以包括步骤101至步骤103,说明如下:

步骤101:获取高模模型的多张渲染图和模型高度信息。

具体地,在步骤101之前,可以利用高模制作工具制作高模模型,并生成高模模型的多张渲染图和模型高度信息。譬如,可以通过3Dmax、zbrash或SubstancePainter等三维建模软件来制作高模模型,同时生成该高模模型的多张渲染图和模型高度信息。

容易理解的是,在模型渲染的过程中,高模模型、渲染图以及模型高度信息等数据从硬盘加载至内存,再加载到显存,以便GPU进行获取。

步骤102:根据预设简易模型、模型高度信息以及多张渲染图确定初始模型。

具体地,预设简易模型可以是预先自动生成的、用于生成目标模型的最基本的模型单位,例如,该预设简易模型可以由多个面片组成,该预设简易模型包含位于三维空间的多个目标点。步骤102主要可以包括以下子步骤:根据模型高度信息确定目标点在二维平面的高度偏移纹理坐标;根据目标点的高度偏移纹理坐标修正多张渲染图,并将修正后多张渲染图贴在预设简易模型上,以得到初始模型。

其中,高度偏移纹理坐标即目标点从三维空间转换到二维平面,关联了高度信息的纹理坐标。容易理解的是,上述多张渲染图是能够体现高模模型的模型高度信息的贴图,将多张渲染图贴在预设简易模型上得到的初始模型,即为能够体现高模模型高度信息的模型,通过将该初始模型在后续步骤中关联光照效果,即可得到既能体现高模模型的细节,又能体现光照效果的目标模型。

进一步地,步骤“根据模型高度信息确定目标点在二维平面的高度偏移纹理坐标”主要可以包括:确定预设简易模型上多个目标点中任意一个目标点的屏幕坐标偏移基本值;根据目标点的屏幕坐标偏移基本值和模型高度信息确定目标点的高度偏移纹理坐标。

为了便于理解,请参阅图3,如模型A上的一个点A1,若不考虑主相机的位置,则在纹理坐标展开时,应该将A1纹理坐标绘制于B1处,但是,若考虑到主相机的位置,即主视角的方向,则应当将A1的纹理坐标绘制于B2处,才能够正确体现出模型A的细节。

在一些实施例中,步骤“确定预设简易模型上多个目标点中任意一个目标点的屏幕坐标偏移基本值”主要可以包括:获取简易模型在三维空间中的任意一个目标点的第一向量和对应的第二向量;根据目标点的第一向量、切线向量和对应的第二向量确定目标点的二维偏移量;根据距离系数和二维偏移量确定目标点的屏幕坐标偏移基本值,距离系数由预设公式确定。

容易理解的是,预设简易模型上每个点的切线向量、法线向量在几何阶段均已经计算出,并已经加载至显存供GPU获取。其中,与点相切的切线有无数条,通常采用与纹理坐标U方向相同的切线作为该点的切线向量。

值得注意的是,如图6所示,视角离目标远近所带来的偏移比例的变化是一个反比关系,也就是需要一个距离系数(DistanceRatio)与上文中的二维偏移量做乘法运算来控制视角越近,偏移越大,视角越远,偏移越小。具体地,确定距离系数的预设公式可以为:DistanceRatio=Divide(1,(distance(摄像机世界坐标Viewposition,目标点的世界坐标Worldposition))),其中,distance(摄像机世界坐标Viewposition,目标点的世界坐标Worldposition)表示摄像机世界坐标和目标点世界坐标之间的距离,Divide(1,(distance(摄像机世界坐标Viewposition,目标点的世界坐标Worldposition)))则表示1除以该距离,以得到距离系数DistanceRatio。到此我们就得到了我们要的根据3D空间中摄像机角度和距离影射屏幕坐标偏移的基本值。

在本实施例中,步骤“获取简易模型在三维空间中的任意一个目标点的第一向量和对应的第二向量”包括:获取三维空间中目标点到主相机方向的第一向量;根据目标点的法线向量和切线向量确定目标点的第二向量。

例如,如图4所示,获取目标点O

具体地,步骤“根据目标点的法线向量和切线向量确定目标点的第二向量”具体包括:将目标点的法线向量和切线向量进行叉乘,以得到第二向量。

例如,如图5所示,通过获取目标点O

在一些实施例中,步骤“根据目标点的第一向量、切线向量和对应的第二向量确定目标点的二维偏移量”主要可以包括:计算目标点的第一向量和切线向量之间的第一点积以及目标点的第一向量和对应的第二向量之间的第二点积,以得到目标点的二维偏移量。

具体地,对于两个归一化的向量,两个点积计算后输出的是两个向量指向之间的距离。如果指向相同方向,则输出1;如果互相垂直,则输出0;如果指向相反方向,则输出-1。这样我们就得到了两个变量,这样就把3维向量转换成了2维偏移量,而且它们在屏幕上的偏移方向也正好和第一向量与且切线向量的偏移方向一致。

在本实施例中,步骤“根据目标点的屏幕坐标偏移基本值和模型高度信息确定目标点的高度偏移纹理坐标”包括:获取高模模型的多个纹理坐标,纹理坐标对应多个目标点中的一个;根据多个纹理坐标、模型高度信息目标点的屏幕坐标偏移基本值确定目标点的高度偏移纹理坐标。

具体地,当根据主相机方向计算出目标点的屏幕坐标偏移基本值后,为了表示出高模模型的凹凸细节,将屏幕坐标偏移基本值与高模模型的高度信息,以及根据高模模型中的纹理信息关联起来,得到目标点的高度偏移纹理坐标。

在一些实施例中,模型高度信息包括多个高度值,高度值对应多个目标点中的一个,根据多个纹理坐标、模型高度信息以及目标点的屏幕坐标偏移基本值确定目标点的高度偏移纹理坐标,包括:将多个高度值二值化;根据目标点对应的二值化后的高度值、预设高度控制比例、目标点的屏幕坐标偏移基本值和目标点对应的纹理坐标确定目标点的高度偏移纹理坐标。

具体地,模型高度信息可以通过高模模型的高度图进行读取,其中,灰度图是高度图最常见的一种。实际上,高度图就是一个数组,该数组的每个元素都指定了高模模型每一个点的高度值,通常,每一个元素只有一个字节的存储空间,因此高度能在区间[0,255]内取值,然而,实际应用中,为了匹配模型空间,需要将高度图映射在区间[0,1]内,即,将高度值二值化的过程。

值得注意的是,预设高度控制比例可以由用户自行设置,以满足用户对目标模型凹凸程度的不同需求。

可选的,步骤“根据目标点对应的二值化后的高度值、预设高度控制比例、目标点的屏幕坐标偏移基本值和目标点对应的纹理坐标确定目标点的高度偏移纹理坐标”可以包括:计算目标点对应的二值化后高度值和预设高度控制比例的第一乘积;计算第一乘积与目标点的屏幕坐标偏移基本值的第二乘积;计算第二乘积与目标点对应的纹理坐标之间的第一和值,以得到目标点的高度偏移纹理坐标。

具体地,将二值化后的高度值与预设高度控制比例相乘,以控制高度值的变化比例,再将第一乘积与屏幕坐标偏移基本值相乘,可以得到一个关联了主相机方向和高模模型高度信息的坐标偏移基本值(第二乘积),再将该坐标偏移基本值与高模模型纹理坐标相加,即可得到模拟高模模型效果的纹理坐标(高度偏移纹理坐标)。

步骤103:根据预设简易模型的光照系数和初始模型生成目标模型,该目标模型用于渲染生成虚拟对象。

具体地,步骤103主要可以包括:确定预设简易模型上多个目标点中任意一个目标点的受光角度纹理坐标数值;根据目标点的受光角度纹理坐标数值和预设光照贴图确定目标点的光照系数;根据目标点的光照系数和初始模型生成目标模型。

在一些实施例中,步骤“确定预设简易模型上多个目标点中任意一个目标点的受光角度纹理坐标数值”具体包括:根据目标点的第一向量和法线向量确定目标点的受光角度纹理坐标数值。

容易理解的是,物体表面产生明暗变化的直接原因,就是光线照射角度的不同,光线垂直于平面的地方就亮,光线斜射到平面的地方就暗,同理,光源照射角度是模型表面的产生明暗变化的重要原因。通常,可以采用光源方向与法线方向的角度来表示光源射向模型的角度。因此,目标模型的光照与法线向量息息相关。

在本实施例中,步骤“根据目标点的第一向量和法线向量确定目标点的受光角度纹理坐标数值”主要包括:计算目标点的第一向量和法线向量之间的叉积;根据叉积计算目标点的受光角度纹理坐标数值。

具体地,利用主相机的目标点和屏幕中心点永远保持一致的特点,将法线向量和第一向量进行叉乘得到摄像机与法线角度之间的偏移角度幅度,即得到一个视角和法线平行为0,垂直为1的变量。譬如,如图7所示,假设目标点的屏幕坐标为(0,0),计算目标点的第一向量(View Direction)和法线向量(Normal Direction)的叉积,得到摄像机与发现角度之间的偏移角度幅度,用于在后续步骤中,根据该偏移角度幅度确定目标点的受光角度纹理坐标数值。

在本实施例中,多张渲染图包括法线贴图,步骤“根据叉积计算目标点的受光角度纹理坐标数值”主要包括:计算叉积与目标点的屏幕坐标以及法线贴图中与目标点对应的红色通道和绿色通道的法线值之间的第三乘积;根据第一乘积和第三乘积确定目标点的受光角度纹理数值。

具体地,光照信息最重要的当然是光源入射方向与目标点的法线向量的夹角,法线贴图本质上就是记录了这个夹角的相关信息,其中,法线贴图红色通道体现光照左右方向的变化,绿色通达体现光照上下方向的变化,而蓝色通道则不起作用,因此,可以将高度图存储在法线贴图的蓝色通道里,从而省去一张贴图资源,节省内存空间。

具体地,步骤“根据第一乘积和第三乘积确定目标点的受光角度纹理数值”主要包括:计算第一乘积与目标点的屏幕坐标的第四乘积;计算第三乘积与第四乘积之间的第二和值,以得到目标点的受光角度纹理坐标。

如此,可以得到一个最基本的光源在屏幕中心当前主相机位置下目标点的受光角度纹理数值。

在本实施例中,预设光照贴图包括多个光照值,多个光照值中的一个光照值对应多个目标点中任意一个目标点,步骤“根据目标点的受光角度纹理坐标数值和预设光照贴图确定目标点的光照系数”包括:根据目标点的受光角度纹理坐标修正目标点对应的光照值,以得到目标点的光照系数。

具体地,步骤“根据目标点的光照系数和初始模型在生成目标模型”主要可以包括:获取初始模型的金属度贴图和环境光遮蔽贴图;利用光照系数修正金属度贴图、光滑度贴图和环境光遮蔽贴图,以生成目标模型。

其中,金属度贴图体现模型的金属高光反射,金属度贴图本身是一张灰白图。越白的地方,金属度越强烈,越黑的地方,金属度越低。光滑度贴图体现了模型对高光反射的能力,光滑度越高,反射高光越强,反之,反射高光越弱。环境光遮蔽贴图则体现了模型的柔和阴影。

在一些实施例中,步骤“利用光照系数修正金属度贴图、光滑度贴图和环境光遮蔽贴图”具体包括:将预设光照比例与光照系数相乘得到第五乘积;将第五乘积与金属值、光滑值以及阴影值相乘,以修正目标模型的光照效果。

具体地,预设光照比例可以由用户设定,即开放参数以动态改变光照,方便制作动画效果。

本申请实施例提供的模型生成方法,通过获取高模模型的多张渲染图和模型高度信息,接着根据预设简易模型、模型高度信息以及多张渲染图确定初始模型,接着根据预设简易模型的光照系数和初始模型生成目标模型,从而在满足用户界面对于模型精度的要求的同时,实现对光照效果的可控性。

为便于更好的实施本申请实施例的模型生成方法,本申请实施例还提供一种模型生成装置。请参阅图8,图8为本申请实施例提供的模型生成装置的结构示意图。该模型生成装置10可以包括获取模块11,确定模块12以及生成模块13。

其中,获取模块11,用于获取高模模型的多张渲染图和模型高度信息。

确定模块12,用于根据预设简易模型、模型高度信息以及多张渲染图确定初始模型。

生成模块13,用于根据预设简易模型的光照系数和初始模型生成目标模型,该目标模型用于渲染生成虚拟对象。

其中,预设简易模型包括位于三维空间的多个目标点,确定模块12主要可以用于:根据模型高度信息确定目标点在二维平面的高度偏移纹理坐标;根据目标点的高度偏移纹理坐标修正多张渲染图,并将修正后的多张渲染图贴在预设简易模型上,以得到初始模型。

具体地,确定模块12主要可以用于:确定预设简易模型上多个目标点中任意一个目标点的屏幕坐标偏移基本值;根据目标点的屏幕坐标偏移基本值和模型高度信息确定目标点的高度偏移纹理坐标。

进一步地,确定模块12具体可以用于:获取简易模型在三维空间中任意一个目标点的第一向量和对应的第二向量;根据目标点的第一向量、切线向量和对应的第二向量确定目标点的二维偏移量;根据距离系数和二维偏移量确定目标点的屏幕坐标偏移基本值,距离系数由预设公式确定。

进一步地,确定模块12具体可以用于:获取三维空间中目标点到主相机方向的第一向量;根据目标点的法线向量和切线向量确定目标点的第二向量。

进一步地,确定模块12具体可以用于:计算目标点的第一向量和切线向量之间的第一点积以及目标点的第一向量和对应的第二向量之间的第二点积,以得到目标点的二维偏移量。

可选的,确定模块12还可以用于:获取高模模型的多个纹理坐标,纹理坐标对应多个目标点中的一个;根据多个纹理坐标、模型高度信息目标点的屏幕坐标偏移基本值确定目标点的高度偏移纹理坐标。

具体地,模型高度信息包括多个高度值,高度值对应多个目标点中的一个,确定模块12主要可以用于:将多个高度值二值化;根据目标点O

进一步地,确定模块12具体可以用于:计算目标点对应的二值化后高度值和预设高低控制比例的第一乘积;计算第一乘积与目标点的屏幕坐标偏移基本值的第二乘积;计算第二乘积与目标点对应的纹理坐标之间的第一和值,以得到目标点的高度偏移纹理坐标。

具体地,生成模块13主要可以用于:确定预设简易模型上多个目标点中任意一个目标点的受光角度纹理坐标数值;根据目标点的受光角度纹理坐标数值和预设光照贴图确定目标点的光照系数;根据目标点的光照系数和初始模型生成目标模型。

可选的,生成模块13主要可以用于:根据目标点的第一向量和法线向量确定目标点的受光角度纹理坐标数值。

可选的,生成模块13主要可以用于:计算目标点的第一向量和法线向量之间的叉积;根据叉积计算目标点的受光角度纹理坐标数值。

具体地,多张渲染图包括法线贴图,生成模块13主要可以用于:计算叉积与目标点的屏幕坐标以及法线贴图中与目标点对应的红色通道和绿色通道的法线值之间的第三乘积;根据第一乘积和第三乘积确定目标点的受光角度纹理数值。

进一步地,生成模块13具体可以用于:计算第一乘积与目标点的屏幕坐标的第四乘积;计算第三乘积与第四乘积之间的第二和值,以得到目标点的受光角度纹理坐标。

具体地,预设光照贴图包括多个光照值,多个光照值中的一个光照值对应多个目标点中任意一个目标点,生成模块13具体可以用于:根据目标点的受光角度纹理坐标修正目标点对应的光照值,以得到目标点的光照系数。

可选的,生成模块13主要可以用于:获取初始模型的金属度贴图、光滑度贴图和环境光遮蔽贴图;利用光照系数修正金属度贴图、光滑度贴图和环境光遮蔽贴图,以生成目标模型。

本申请实施例提供的模型生成装置10,通过获取模块11获取高模模型的多张渲染图和模型高度信息,接着确定模块12根据预设简易模型、模型高度信息以及多张渲染图确定初始模型,接着生成模块13根据预设简易模型的光照系数和初始模型生成目标模型,从而在满足用户界面对于模型精度的要求的同时,实现对光照效果的可控性。

此外,本申请实施例还提供一种计算机设备,该计算机设备可以为终端,该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机(PC,PersonalComputer)、个人数字助理(PersonalDigitalAssistant,PDA)等终端设备。如图9所示,图9为本申请实施例提供的计算机设备的结构示意图。该计算机设备1000包括有一个或者一个以上处理核心的处理器601、有一个或一个以上计算机可读存储介质的存储器602及存储在存储器602上并可在处理器上运行的计算机程序。其中,处理器601与存储器602电性连接。本领域技术人员可以理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

处理器601是计算机设备1000的控制中心,利用各种接口和线路连接整个计算机设备1000的各个部分,通过运行或加载存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行计算机设备1000的各种功能和处理数据,从而对计算机设备1000进行整体监控。

在本申请实施例中,计算机设备1000中的处理器601会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器602中,并由处理器601来运行存储在存储器602中的应用程序,从而实现各种功能:

获取高模模型的多张渲染图和模型高度信息;根据预设简易模型、模型高度信息以及多张渲染图确定初始模型;根据预设简易模型的光照系数和初始模型生成目标模型,该目标模型用于渲染生成虚拟对象。

以上各个操作的具体实施可参见前面的实施例,在此不再赘述。

可选的,如图9所示,计算机设备1000还包括:触控显示屏603、射频电路604、音频电路605、输入单元606以及电源607。其中,处理器601分别与触控显示屏603、射频电路604、音频电路605、输入单元606以及电源607电性连接。本领域技术人员可以理解,图9中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

触控显示屏603可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏603可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(LCD,LiquidCrystalDisplay)、有机发光二极管(OLED,OrganicLight-EmittingDiode)等形式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器601,并能接收处理器601发来的命令并加以执行。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器601以确定触摸事件的类型,随后处理器601根据触摸事件的类型在显示面板上提供相应的视觉输出。在本申请实施例中,可以将触控面板与显示面板集成到触控显示屏603而实现输入和输出功能。但是在某些实施例中,触控面板与触控面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏603也可以作为输入单元606的一部分实现输入功能。

在本申请实施例中,通过处理器601执行游戏应用程序在触控显示屏603上生成图形用户界面,图形用户界面上的虚拟场景中包括3D模型。

射频电路604可用于收发射频信号,以通过无线通信与网络设备或其他计算机设备建立无线通讯,与网络设备或其他计算机设备之间收发信号。

音频电路605可以用于通过扬声器、传声器提供用户与计算机设备之间的音频接口。音频电路605可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路605接收后转换为音频数据,再将音频数据输出处理器601处理后,经射频电路604以发送给比如另一计算机设备,或者将音频数据输出至存储器602以便进一步处理。音频电路605还可能包括耳塞插孔,以提供外设耳机与计算机设备的通信。

输入单元606可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。

电源607用于给计算机设备1000的各个部件供电。可选的,电源607可以通过电源管理系统与处理器601逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源607还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

尽管图9中未示出,计算机设备1000还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

由上可知,本实施例提供的计算机设备,通过获取高模模型的多张渲染图和模型高度信息;根据预设简易模型、模型高度信息以及多张渲染图确定初始模型;根据预设简易模型的光照系数和初始模型生成目标模型,从而在满足用户界面对于模型精度的要求的同时,实现对光照效果的可控性。

本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。

为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种模型生成方法中的步骤。例如,该计算机程序可以执行如下步骤:

获取高模模型的多张渲染图和模型高度信息;根据预设简易模型、模型高度信息以及多张渲染图确定初始模型;根据预设简易模型的光照系数和初始模型生成目标模型。

以上各个操作的具体实施可参见前面的实施例,在此不再赘述。

其中,该存储介质可以包括:只读存储器(ROM,ReadOnlyMemory)、随机存取记忆体(RAM,RandomAccessMemory)、磁盘或光盘等。

由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种模型生成方法中的步骤,因此,可以实现本申请实施例所提供的任一种模型生成方法所能实现的有益效果,详见前面的实施例,在此不再赘述。

以上对本申请实施例所提供的一种模型生成方法、装置、存储介质及计算机设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

相关技术
  • 一种模型生成方法、撞库检测方法、装置、电子设备及计算机可读存储介质
  • 一种模型生成方法、装置、存储介质及计算机设备
技术分类

06120112435177