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

虚拟模型中刻线的生成方法、装置、终端设备及存储介质

文献发布时间:2023-06-19 18:30:43


虚拟模型中刻线的生成方法、装置、终端设备及存储介质

技术领域

本发明涉及游戏技术领域,尤其是涉及一种虚拟模型中刻线的生成方法、装置、终端设备及存储介质。

背景技术

目前,在虚拟模型(诸如,机甲模型)表面添加装饰刻线,可以增强虚拟模型的美观度和复杂度。相关技术提供了一种在游戏实时运行过程中由玩家手动绘制刻线的方案,需要玩家通过鼠标点击获取模型表面坐标,并通过蓝图Spline功能将其连接为样条线面片,再由玩家调整样条线面片的宽度以及为其添加用于模拟刻线的贴图材质,以在虚拟模型表面生成刻线。但是上述方案通过鼠标点击虚拟模型表面以获取坐标的方式稳定性较差,导致生成的刻线的形状及美观度难以控制。

发明内容

有鉴于此,本发明的目的在于提供一种虚拟模型中刻线的生成方法、装置、终端设备及存储介质,可以降低玩家自定义绘制刻线的操作难度,还可以显著提升刻线美观度,从而提高游戏的丰富度以及可玩性。

第一方面,本发明实施例提供了一种虚拟模型中刻线的生成方法,包括:载入所述虚拟模型对应的预分布点数据;生成每个所述预分布点数据对应的标示点;其中,所述标示点与所述虚拟模型的虚拟骨骼关联;基于所述标示点中的至少一个目标标示点对应的所述预分布点数据,生成所述虚拟模型对应的模型表面刻线。

第二方面,本发明实施例还提供一种虚拟模型中刻线的生成装置,包括:点数据载入模块,用于载入所述虚拟模型对应的预分布点数据;标示点生成模块,用于生成每个所述预分布点数据对应的标示点;其中,所述标示点与所述虚拟模型的虚拟骨骼关联;刻线生成模块,用于基于所述标示点中的至少一个目标标示点对应的所述预分布点数据,生成所述虚拟模型对应的模型表面刻线。

第三方面,本发明实施例还提供一种终端设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现第一方面提供的任一项所述的方法。

第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现第一方面提供的任一项所述的方法。

本发明实施例提供的一种虚拟模型中刻线的生成方法、装置、终端设备及存储介质,首先载入虚拟模型对应的预分布点数据,并生成每个预分布点数据对应的标示点,该标示点与虚拟模型的虚拟骨骼关联,再基于标示点中的至少一个目标标示点对应的预分布点数据,生成虚拟模型对应的模型表面刻线。上述方法可以在激活刻线功能时,基于预先配置的虚拟模型对应的预分布点数据生成相应的标示点,便于玩家从标示点中选择至少一个目标标示点,并基于目标标示点对应的预分布点数据生成相应的模型表面刻线,从而可以降低玩家自定义绘制刻线的操作难度,还可以显著提升刻线美观度,进而提高游戏的丰富度以及可玩性。

本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

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

图1为本发明实施例提供的一种虚拟模型中刻线的生成方法的流程示意图;

图2为本发明实施例提供的一种初始面片模型的示意图;

图3为本发明实施例提供的一种CSV文件夹中预设点分布数据的示意图;

图4为本发明实施例提供的一种参数接口的示意图;

图5为本发明实施例提供的一种初始条带面片的示意图;

图6为本发明实施例提供的一种边缘校正处理的效果示意图;

图7为本发明实施例提供的一种模型表面刻线的示意图;

图8为本发明实施例提供的一种虚拟模型中刻线的生成装置的结构示意图;

图9为本发明实施例提供的一种终端设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前,机甲模型表面的刻线通常是由模型师预先制作得到的。相关技术中提供的在游戏实时运行过程中由玩家手动绘制刻线的方案,至少存在以下问题:(1)通过鼠标点击机甲模型表面,很难获取机甲模型的表面法线数据,从而导致无法矫正生成的刻线面片的朝向,进而致使面片和模型穿插;(2)通过鼠标点击获取的坐标比较不稳定,导致连接而成的线的形状及美观度难以控制;(3)在进行主机游戏的交互时,无法使用手柄等非鼠标类输入设备进行刻线的绘制。基于此,本发明实施提供了一种虚拟模型中刻线的生成方法、装置、终端设备及存储介质,可以降低玩家自定义绘制刻线的操作难度,还可以显著提升刻线美观度,从而提高游戏的丰富度以及可玩性。

在本公开其中一种实施例中的虚拟模型中刻线的生成方法可以运行于本地终端设备或者是服务器。当虚拟模型中刻线的生成方法运行于服务器时,该方法则可以基于云交互系统来实现与执行,其中,云交互系统包括服务器和客户端设备。

在一可选的实施方式中,云交互系统下可以运行各种云应用,例如:云游戏。以云游戏为例,云游戏是指以云计算为基础的游戏方式。在云游戏的运行模式下,游戏程序的运行主体和游戏画面呈现主体是分离的,虚拟模型中刻线的生成方法的储存与运行是在云游戏服务器上完成的,客户端设备的作用用于数据的接收、发送以及游戏画面的呈现,举例而言,客户端设备可以是靠近用户侧的具有数据传输功能的显示设备,如,移动终端、电视机、计算机、掌上电脑等;但是进行信息处理的为云端的云游戏服务器。在进行游戏时,玩家操作客户端设备向云游戏服务器发送操作指令,云游戏服务器根据操作指令运行游戏,将游戏画面等数据进行编码压缩,通过网络返回客户端设备,最后,通过客户端设备进行解码并输出游戏画面。

在一可选的实施方式中,以游戏为例,本地终端设备存储有游戏程序并用于呈现游戏画面。本地终端设备用于通过图形用户界面与玩家进行交互,即,常规的通过电子设备下载安装游戏程序并运行。该本地终端设备将图形用户界面提供给玩家的方式可以包括多种,例如,可以渲染显示在终端的显示屏上,或者,通过全息投影提供给玩家。举例而言,本地终端设备可以包括显示屏和处理器,该显示屏用于呈现图形用户界面,该图形用户界面包括游戏画面,该处理器用于运行该游戏、生成图形用户界面以及控制图形用户界面在显示屏上的显示。

在一种可能的实施方式中,本公开实施例提供了一种虚拟模型中刻线的生成方法,通过终端设备提供图形用户界面,其中,终端设备可以是前述提到的本地终端设备,也可以是前述提到的云交互系统中的客户端设备。

下面以具体的实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。

为便于对本实施例进行理解,首先对本发明实施例所公开的一种虚拟模型中刻线的生成方法进行详细介绍,参见图1所示的一种虚拟模型中刻线的生成方法的流程示意图,该方法主要包括以下步骤S102至步骤S106:

步骤S102,载入虚拟模型对应的预分布点数据。其中,虚拟模型可以为虚拟机甲模型,预分布点数据可以包括多个点以及每个点的法线朝向数据、切线朝向数据、贴图颜色数据、驱动骨骼数据、是否处于边缘等。在一种实施方式中,可以通过图形用户界面提供刻线控件,如果监听到针对于刻线控件的触发操作(诸如,点击操作、滑动操作、手势操作等),即可确定激活刻线功能,并载入预分布点数据。可选的,预分布点数据是在Maya或其他三维软件中生成的,预分布点数据可以采用CSV(Comma-Separated Values,字符分隔值)格式存储。

步骤S104,生成每个预分布点数据对应的标示点。其中,标示点也即可点击的球Actor对象,每个预分布点数据均对应有一个标示点,标示点与虚拟模型的虚拟骨骼关联。在一种实施方式中,可以将预分布点数据导入引擎中,且预分布点数据将转换为引擎可识别的DataTable资产格式,当游戏中刻线功能激活时,即可根据预分布点数据生成大量可点击的标示点,并将标示点挂接至虚拟模型的虚拟骨骼上,以使标示点与虚拟骨骼关联。

步骤S106,基于标示点中的至少一个目标标示点对应的预分布点数据,生成虚拟模型对应的模型表面刻线。其中,模型表面刻线也即硬表面模型上的凹槽线条效果,诸如高达手办等机甲模型表面的刻线效果。在一种实施方式中,可以通过手柄或鼠标等输入设备从标示点中选择至少一个目标标示点,将目标标示点对应的预分布点数据传入至预先搭建的niagara系统对应的参数接口,以通过niagara系统基于目标标示点对应的预分布点数据计算生成刻线,并通过坐标转换算法校正和材质赋予后得到模型表面刻线,再将该模型表面刻线挂接至虚拟模型的虚拟骨骼上。

本发明实施例提供的虚拟模型中刻线的生成方法,可以在激活刻线功能时,基于预先配置的虚拟模型对应的预分布点数据生成相应的标示点,便于玩家从标示点中选择至少一个目标标示点,并基于目标标示点对应的预分布点数据生成相应的模型表面刻线,从而可以降低玩家自定义绘制刻线的操作难度,还可以显著提升刻线美观度,进而提高游戏的丰富度以及可玩性。

在数据准备阶段,可以在Maya或其他三维软件中配置虚拟模型对应的预分布点数据,具体的,参见如下(1)至(2):

(1)响应针对于虚拟模型的面片拓扑操作,得到虚拟模型对应的初始面片模型。其中,面片拓扑操作也即手动建立初始面片模型,初始面片模型包括均匀分布的多个点,且初始面片模型的边缘与虚拟模型的边缘对齐。示例性的,参见图2所示的一种初始面片模型的示意图,应当注意的是,在拓扑初始面片模型的过程中,应当保持初始面片模型中每个点的分布均匀和边缘对齐。

(2)确定初始面片模型中每个点的法线朝向数据、切线朝向数据、贴图颜色数据和驱动骨骼数据,得到虚拟模型对应的预分布点数据,其中,预分布点数据是基于驱动骨骼数据进行分类存储的。在一种实施方式中,可以将初始面片数据导入至Houdini软件中,利用Houdini软件自动计算每个点的法线朝向数据、切线朝向数据和是否处于边缘等,并集成虚拟模型中相应位置处的模型颜色数据。具体的,将初始面片数据导入至Houdini软件之后,可以对初始面片模型进行细分,也即在初始面片模型中继续增加点;将初始面片模型转换为线,以计算该线上每个点的法线朝向数据和切线朝向数据;再将线转换为点,以利用该点的坐标读取虚拟模型中相应坐标处的贴图颜色数据;对点的ID(Identity document,身份标识号)进行镜像处理,从而实现左右同步,且在导出点数据时按照ID顺序进行导出;在输出点数据时,可以根据驱动该点的虚拟骨骼(包括,肩膀骨骼、上臂骨骼、下臂骨骼等)或虚拟部件(包括,头、手、脚等)创建相应的文件夹,并将点数据保存至该文件夹中。另外,在输出点数据时,可以通过Python将点数据导出为CSV格式。例如,假设存在3个虚拟骨骼,则自动创建3个CSV文件夹,每个CSV文件夹以骨骼命名,从而利用每个CSV文件夹存储相应的点数据,诸如图3所示的一种CSV文件夹中预设点分布数据的示意图。

另外,还可以在UnrealEngine中获取虚拟模型T-pose骨骼的坐标(也即,骨骼坐标数据)和旋转数据,并将骨骼坐标数据和旋转数据导出为CSV格式,用以矫正挂接结果。

在数据应用阶段,可以将预分布点数据导入引擎,并将其格式转换为引擎可识别的DataTable资产格式,以及按照分类层级命名分类,其中,分类层级即为上述虚拟部件和虚拟骨骼。在游戏中刻线功能激活时,即可根据预分布点数据生成大量可点击的标示点,并将标示点挂接到虚拟骨骼上。

为便于理解,本发明实施例提供了一种将标示点挂接至虚拟骨骼上的实施方式,参见如下步骤1至步骤3:

步骤1,获取虚拟模型对应的旋转数据,以及虚拟骨骼在虚拟模型所处的本地坐标系下的骨骼坐标数据。在一种实施方式中,可以在UnrealEngine中获取虚拟模型对应的旋转数据,以及虚拟骨骼在虚拟模型所处的本地坐标系下的骨骼坐标数据。

步骤2,基于旋转数据,确定预分布点数据在本地坐标系下的目标点坐标数据。在具体实现时,可以计算预分布点数据的初始点坐标数据与旋转数据的逆矩阵的乘积,得到中间点坐标数据,再对中间点坐标数据进行坐标系转换,得到本地坐标系下的目标点坐标数据。在挂接时,可以将预分布点数据乘以旋转数据的逆矩阵,并把全局坐标转换到该虚拟骨骼所处本地空间坐标,在此基础上进行挂接,以匹配角色动画。

步骤3,基于骨骼坐标数据与目标点坐标数据之间的匹配关系,将预分布点数据挂接至虚拟骨骼。在具体实现时,当目标点坐标数据与骨骼坐标数据相同时,即可确定两者存在匹配关系,并将该预分布点数据挂接至虚拟骨骼中该骨骼坐标数据对应的位置处。

对于前述步骤S106,本发明实施例提供了一种基于标示点中的至少一个目标标示点对应的预分布点数据,生成虚拟模型对应的模型表面刻线的实施方式,参见如下步骤a至步骤d:

步骤a,响应针对于标示点的选择操作,确定至少一个目标标示点,并提取每个目标标示点对应的预分布点数据。其中,选择操作也即针对于标示点的点击事件。在一种实施方式中,可以生成一个niagara系统,在该niagara系统中利用点击事件选中多个标示点,选中的标示点即为目标标示点,并提取每个目标标示点的预分布点数据。

步骤b,基于每个目标标示点对应的预分布点数据,生成初始条带面片模型。在具体实现时,可以参见如下步骤b1至步骤b3:

步骤b1,按照选择操作的选择顺序,将每个目标标示点对应的预分布点数据整合为刻线参数数组。其中,选择顺序也即点击顺序。在一种实施方式中,可以按照点击顺序将每个目标标示点对应的预分布点数据排列为刻线参数数组,分类存为pos_array(目标点坐标数据)、face_array(法线向量)、N_array(切线向量)、color_array(颜色)、custom_color(自定义颜色)、width(宽度)等多个数据。

步骤b2,将刻线参数数组传入至预先创建的niagara系统对应的参数接口,其中,参数接口如图4所示。

步骤b3,在niagara系统中,根据刻线参数数组中的目标点坐标数据生成初始条带面片。

步骤c,对初始条带面片模型进行校正处理,得到目标条带面片模型。其中,校正处理包括折角校正处理和/或边缘校正处理。为便于理解,本发明实施例分别提供了折角校正处理和边缘校正处理的具体实施方式,参见如下方式一至方式二:

方式一:对于折角校正处理,在具体实现时,可以参见如下(A1)至(A4):

(A1)如果初始条带面片模型包括折角,将初始条带面片模型划分为第一子面片模型和第二子面片模型。其中,参见图5所示的一种初始条带面片的示意图,图5示意出了校正前的初始条带面片模型和校正后的初始条带面片模型,第一子面片模型和第二子面片模型也即折角的两个边。

(A2)计算第一子面片模型对应的第一向量与第二子面片模型对应的第二向量之间的点乘值,以及计算第一向量与第二向量之间的模值。在一种实施方式中,将第一向量记为ab,将第二向量记为bc,然后计算向量ab与向量bc的点乘值,以及计算向量ab与向量bc的模值。

(A3)基于点乘值与模值,确定折角对应的斜边宽度。在一种实施方式中,可以计算模值与点乘值的商得到cos值,通过反余弦即可求解折角的角度值,进而可以根据角度值确定折角对应的斜边宽度。

(A4)根据斜边宽度对是初始条带面片的宽度进行校正。在一种实施方式中,可以将斜边宽度作为第一子面片模型和第二子面片模型的宽度,从而实现对初始条带面片的宽度校正。

方式二:对于边缘校正处理,在具体实现时,可以参见如下(B1)至(B3):

(B1)生成初始条带面片模型中每个边缘点对应的虚拟点。其中,边缘点也即初始条带面片模型两端处的点。在一种实施方式中,可以在初始条带面片模型的两端处再加两个虚拟点,具体的,可以在前述刻线参数数组的头和尾处分别添加一个坐标为0的空点,该空点即为虚拟点。

(B2)响应针对于虚拟点的位置调整操作,基于虚拟点的移动轨迹控制边缘点移动,以调整边缘点的位置。在一种实施方式中,可以通过移动虚拟点,控制边缘点移动,从而使边缘点摆正。

(B3)响应针对于虚拟点的朝向调整操作,基于虚拟点的旋转角度控制边缘点旋转,以调整边缘点的法线朝向。示例性的,参见图6所示的一种边缘校正处理的效果示意图,可以通过控制两个虚拟点的朝向,实现控制边缘点进行旋转,具体的,可以基于传入的切线朝向校正初始条带面片模型的两端朝向,实现匹配模型边缘。

步骤d,为目标条带面片模型赋予刻线材质,得到虚拟模型对应的模型表面刻线。其中,刻线材质包括延迟贴花材质。在一种实施方式中,可以为目标条带面片模型赋予延迟贴花材质,具体的,可以在材质Shader中,通过添加法线、环境光遮蔽、视差效果等模拟真实凹槽效果,诸如图7所示的一种模型表面刻线的示意图。

在一种实施方式中,模型表面刻线的数量为至少一个,再生成多条模型表面刻线之后,需要将每个模型表面刻线均挂接至虚拟模型的虚拟骨骼。在实际应用中,如果绘制多条刻线,则在挂接骨骼点上进行多次生成Niagara系统,同一个骨骼中所有的Niagara系统,均采用同一套坐标矫正算法挂接到骨骼。

综上所述,本发明实施例提供的虚拟模型中刻线的生成方法,首先通过手动拓扑初始面片模型,提取并导出初始面片模型中的预分布点数据,然后在引擎中载入预分布点数据,在游戏运行过程中可以根据预分布点数据生成可点击的标示点,并将标示点挂接至虚拟骨骼,当玩家交互标示点时,将相应标示点对应的预分布点数据传入参数接口,以生成刻线,并未刻线赋予延迟贴花材质,最终将刻线挂接至虚拟骨骼。上述方法基于手动在模型表面生成预分布点,计算并存储所需数据。在游戏中交互绘制时调用这些数据,通过Niagara系统计算生成刻线,并通过坐标转换算法矫正后,挂接到角色动画骨骼上,并赋予效果真实的材质,达到绘制的刻线与原模型完美融合,并且规整美观的效果。本发明实施例将原本的外观装饰效果,转变为由玩家自定义的效果,刻线成为改装玩法的其中之一,从而显著提高游戏丰富度好额可玩性,而且可以减少数据准备阶段需要预制作的刻线数量,进而减少模型制作的成本。

对于前述实施例提供的虚拟模型中刻线的生成方法,本发明实施例提供了一种虚拟模型中刻线的生成装置,参见图8所示的一种虚拟模型中刻线的生成装置的结构示意图,该装置主要包括以下部分:

点数据载入模块802,用于载入虚拟模型对应的预分布点数据;

标示点生成模块804,用于生成每个预分布点数据对应的标示点;其中,标示点与虚拟模型的虚拟骨骼关联;

刻线生成模块806,用于基于标示点中的至少一个目标标示点对应的预分布点数据,生成虚拟模型对应的模型表面刻线。

本发明实施例提供的虚拟模型中刻线的生成装置,可以在激活刻线功能时,基于预先配置的虚拟模型对应的预分布点数据生成相应的标示点,便于玩家从标示点中选择至少一个目标标示点,并基于目标标示点对应的预分布点数据生成相应的模型表面刻线,从而可以降低玩家自定义绘制刻线的操作难度,还可以显著提升刻线美观度,进而提高游戏的丰富度以及可玩性。

在一种实施方式中,上述装置还包括点数据生成模块,用于:响应针对于虚拟模型的面片拓扑操作,得到虚拟模型对应的初始面片模型;其中,初始面片模型包括均匀分布的多个点,且初始面片模型的边缘与虚拟模型的边缘对齐;确定初始面片模型中每个点的法线朝向数据、切线朝向数据、贴图颜色数据和驱动骨骼数据,得到虚拟模型对应的预分布点数据;其中,预分布点数据是基于驱动骨骼数据进行分类存储的。

在一种实施方式中,上述装置还包括第一挂接模块,用于:获取虚拟模型对应的旋转数据,以及虚拟骨骼在虚拟模型所处的本地坐标系下的骨骼坐标数据;基于旋转数据,确定预分布点数据在本地坐标系下的目标点坐标数据;基于骨骼坐标数据与目标点坐标数据之间的匹配关系,将预分布点数据挂接至虚拟骨骼。

在一种实施方式中,第一挂接模块还用于:计算预分布点数据的初始点坐标数据与旋转数据的逆矩阵的乘积,得到中间点坐标数据;对中间点坐标数据进行坐标系转换,得到本地坐标系下的目标点坐标数据。

在一种实施方式中,刻线生成模块806还用于:响应针对于标示点的选择操作,确定至少一个目标标示点,并提取每个目标标示点对应的预分布点数据;基于每个目标标示点对应的预分布点数据,生成初始条带面片模型;对初始条带面片模型进行校正处理,得到目标条带面片模型;为目标条带面片模型赋予刻线材质,得到虚拟模型对应的模型表面刻线。

在一种实施方式中,刻线生成模块806还用于:按照选择操作的选择顺序,将每个目标标示点对应的预分布点数据整合为刻线参数数组;将刻线参数数组传入至预先创建的niagara系统对应的参数接口;在niagara系统中,根据刻线参数数组中的目标点坐标数据生成初始条带面片。

在一种实施方式中,校正处理包括折角校正处理;刻线生成模块806还用于:如果初始条带面片模型包括折角,将初始条带面片模型划分为第一子面片模型和第二子面片模型;计算第一子面片模型对应的第一向量与第二子面片模型对应的第二向量之间的点乘值,以及计算第一向量与第二向量之间的模值;基于点乘值与模值,确定折角对应的斜边宽度;根据斜边宽度对是初始条带面片的宽度进行校正。

在一种实施方式中,校正处理包括边缘校正处理;刻线生成模块806还用于:生成初始条带面片模型中每个边缘点对应的虚拟点;响应针对于虚拟点的位置调整操作,基于虚拟点的移动轨迹控制边缘点移动,以调整边缘点的位置;响应针对于虚拟点的朝向调整操作,基于虚拟点的旋转角度控制边缘点旋转,以调整边缘点的法线朝向。

在一种实施方式中,模型表面刻线的数量为至少一个;上述装置还包括,第二挂接模块,用于:将每个模型表面刻线均挂接至虚拟模型的虚拟骨骼。

本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

本发明实施例提供了一种终端设备,具体的,该终端设备包括处理器和存储装置;存储装置上存储有计算机程序,计算机程序在被所述处理器运行时执行:

一种虚拟模型中刻线的生成方法,包括:载入虚拟模型对应的预分布点数据;生成每个预分布点数据对应的标示点;其中,标示点与虚拟模型的虚拟骨骼关联;基于标示点中的至少一个目标标示点对应的预分布点数据,生成虚拟模型对应的模型表面刻线。

在一种实施方式中,方法还包括:响应针对于虚拟模型的面片拓扑操作,得到虚拟模型对应的初始面片模型;其中,初始面片模型包括均匀分布的多个点,且初始面片模型的边缘与虚拟模型的边缘对齐;确定初始面片模型中每个点的法线朝向数据、切线朝向数据、贴图颜色数据和驱动骨骼数据,得到虚拟模型对应的预分布点数据;其中,预分布点数据是基于驱动骨骼数据进行分类存储的。

在一种实施方式中,在生成每个预分布点数据对应的标示点的步骤之后,方法还包括:获取虚拟模型对应的旋转数据,以及虚拟骨骼在虚拟模型所处的本地坐标系下的骨骼坐标数据;基于旋转数据,确定预分布点数据在本地坐标系下的目标点坐标数据;基于骨骼坐标数据与目标点坐标数据之间的匹配关系,将预分布点数据挂接至虚拟骨骼。

在一种实施方式中,基于旋转数据,确定预分布点数据在本地坐标系下的目标点坐标数据的步骤,包括:计算预分布点数据的初始点坐标数据与旋转数据的逆矩阵的乘积,得到中间点坐标数据;对中间点坐标数据进行坐标系转换,得到本地坐标系下的目标点坐标数据。

在一种实施方式中,基于标示点中的至少一个目标标示点对应的预分布点数据,生成虚拟模型对应的模型表面刻线的步骤,包括:响应针对于标示点的选择操作,确定至少一个目标标示点,并提取每个目标标示点对应的预分布点数据;基于每个目标标示点对应的预分布点数据,生成初始条带面片模型;对初始条带面片模型进行校正处理,得到目标条带面片模型;为目标条带面片模型赋予刻线材质,得到虚拟模型对应的模型表面刻线。

在一种实施方式中,基于每个目标标示点对应的预分布点数据,生成初始条带面片模型的步骤,包括:按照选择操作的选择顺序,将每个目标标示点对应的预分布点数据整合为刻线参数数组;将刻线参数数组传入至预先创建的niagara系统对应的参数接口;在niagara系统中,根据刻线参数数组中的目标点坐标数据生成初始条带面片。

在一种实施方式中,校正处理包括折角校正处理;对初始条带面片模型进行校正处理的步骤,包括:如果初始条带面片模型包括折角,将初始条带面片模型划分为第一子面片模型和第二子面片模型;计算第一子面片模型对应的第一向量与第二子面片模型对应的第二向量之间的点乘值,以及计算第一向量与第二向量之间的模值;基于点乘值与模值,确定折角对应的斜边宽度;根据斜边宽度对是初始条带面片的宽度进行校正。

在一种实施方式中,校正处理包括边缘校正处理;对初始条带面片模型进行校正处理的步骤,包括:生成初始条带面片模型中每个边缘点对应的虚拟点;响应针对于虚拟点的位置调整操作,基于虚拟点的移动轨迹控制边缘点移动,以调整边缘点的位置;响应针对于虚拟点的朝向调整操作,基于虚拟点的旋转角度控制边缘点旋转,以调整边缘点的法线朝向。

在一种实施方式中,模型表面刻线的数量为至少一个;在为目标条带面片模型赋予刻线材质,得到虚拟模型对应的模型表面刻线的步骤之后,方法还包括:将每个模型表面刻线均挂接至虚拟模型的虚拟骨骼。

本发明实施例提供的终端设备,可以在激活刻线功能时,基于预先配置的虚拟模型对应的预分布点数据生成相应的标示点,便于玩家从标示点中选择至少一个目标标示点,并基于目标标示点对应的预分布点数据生成相应的模型表面刻线,从而可以降低玩家自定义绘制刻线的操作难度,还可以显著提升刻线美观度,进而提高游戏的丰富度以及可玩性。

图9为本发明实施例提供的一种终端设备的结构示意图,该终端设备100包括:处理器90,存储器91,总线92和通信接口93,所述处理器90、通信接口93和存储器91通过总线92连接;处理器90用于执行存储器91中存储的可执行模块,例如计算机程序。

其中,存储器91可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口93(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。

总线92可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

其中,存储器91用于存储程序,所述处理器90在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器90中,或者由处理器90实现。

处理器90可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器90中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器90可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器91,处理器90读取存储器91中的信息,结合其硬件完成上述方法的步骤。

本发明实施例所提供的可读存储介质的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行:

一种虚拟模型中刻线的生成方法,包括:载入虚拟模型对应的预分布点数据;生成每个预分布点数据对应的标示点;其中,标示点与虚拟模型的虚拟骨骼关联;基于标示点中的至少一个目标标示点对应的预分布点数据,生成虚拟模型对应的模型表面刻线。

在一种实施方式中,方法还包括:响应针对于虚拟模型的面片拓扑操作,得到虚拟模型对应的初始面片模型;其中,初始面片模型包括均匀分布的多个点,且初始面片模型的边缘与虚拟模型的边缘对齐;确定初始面片模型中每个点的法线朝向数据、切线朝向数据、贴图颜色数据和驱动骨骼数据,得到虚拟模型对应的预分布点数据;其中,预分布点数据是基于驱动骨骼数据进行分类存储的。

在一种实施方式中,在生成每个预分布点数据对应的标示点的步骤之后,方法还包括:获取虚拟模型对应的旋转数据,以及虚拟骨骼在虚拟模型所处的本地坐标系下的骨骼坐标数据;基于旋转数据,确定预分布点数据在本地坐标系下的目标点坐标数据;基于骨骼坐标数据与目标点坐标数据之间的匹配关系,将预分布点数据挂接至虚拟骨骼。

在一种实施方式中,基于旋转数据,确定预分布点数据在本地坐标系下的目标点坐标数据的步骤,包括:计算预分布点数据的初始点坐标数据与旋转数据的逆矩阵的乘积,得到中间点坐标数据;对中间点坐标数据进行坐标系转换,得到本地坐标系下的目标点坐标数据。

在一种实施方式中,基于标示点中的至少一个目标标示点对应的预分布点数据,生成虚拟模型对应的模型表面刻线的步骤,包括:响应针对于标示点的选择操作,确定至少一个目标标示点,并提取每个目标标示点对应的预分布点数据;基于每个目标标示点对应的预分布点数据,生成初始条带面片模型;对初始条带面片模型进行校正处理,得到目标条带面片模型;为目标条带面片模型赋予刻线材质,得到虚拟模型对应的模型表面刻线。

在一种实施方式中,基于每个目标标示点对应的预分布点数据,生成初始条带面片模型的步骤,包括:按照选择操作的选择顺序,将每个目标标示点对应的预分布点数据整合为刻线参数数组;将刻线参数数组传入至预先创建的niagara系统对应的参数接口;在niagara系统中,根据刻线参数数组中的目标点坐标数据生成初始条带面片。

在一种实施方式中,校正处理包括折角校正处理;对初始条带面片模型进行校正处理的步骤,包括:如果初始条带面片模型包括折角,将初始条带面片模型划分为第一子面片模型和第二子面片模型;计算第一子面片模型对应的第一向量与第二子面片模型对应的第二向量之间的点乘值,以及计算第一向量与第二向量之间的模值;基于点乘值与模值,确定折角对应的斜边宽度;根据斜边宽度对是初始条带面片的宽度进行校正。

在一种实施方式中,校正处理包括边缘校正处理;对初始条带面片模型进行校正处理的步骤,包括:生成初始条带面片模型中每个边缘点对应的虚拟点;响应针对于虚拟点的位置调整操作,基于虚拟点的移动轨迹控制边缘点移动,以调整边缘点的位置;响应针对于虚拟点的朝向调整操作,基于虚拟点的旋转角度控制边缘点旋转,以调整边缘点的法线朝向。

在一种实施方式中,模型表面刻线的数量为至少一个;在为目标条带面片模型赋予刻线材质,得到虚拟模型对应的模型表面刻线的步骤之后,方法还包括:将每个模型表面刻线均挂接至虚拟模型的虚拟骨骼。

本发明实施例提供的可读存储介质,可以在激活刻线功能时,基于预先配置的虚拟模型对应的预分布点数据生成相应的标示点,便于玩家从标示点中选择至少一个目标标示点,并基于目标标示点对应的预分布点数据生成相应的模型表面刻线,从而可以降低玩家自定义绘制刻线的操作难度,还可以显著提升刻线美观度,进而提高游戏的丰富度以及可玩性。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

技术分类

06120115597168