CN111179422B - 一种模型构建方法、装置及终端设备 - Google Patents
一种模型构建方法、装置及终端设备 Download PDFInfo
- Publication number
- CN111179422B CN111179422B CN201911420509.0A CN201911420509A CN111179422B CN 111179422 B CN111179422 B CN 111179422B CN 201911420509 A CN201911420509 A CN 201911420509A CN 111179422 B CN111179422 B CN 111179422B
- Authority
- CN
- China
- Prior art keywords
- model
- building
- models
- sub
- joint
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请适用于动画制作技术领域,提供了一种模型构建方法、装置及终端设备,通过获取构建第一模型所需要的积木构件;将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;将所述的至少两个子模型中所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型,提高了构建制作动画所需模型的制作效率,并缩短了制作周期,降低了制作成本,有效地实现了人们对成本效率的控制目的。
Description
技术领域
本申请属于动画制作技术领域,尤其涉及一种模型构建方法、装置及终端设备。
背景技术
随着游戏动画的快速发展,需要制作不同运动形态的模型来实现动画主体比如人物、物体等自由运动的姿态,现有技术方案一般是二维/三维动画模型制作软件比如3DStudio MAX、Autodesk Maya等完成完整模型、运动动画的制作,并将制作好的模型、动画导入到游戏开发工具即游戏引擎比如Unity 3D、Unreal Engine 4中,由具体的功能模块进行运动驱动。
然而,如果要实现另一个模型组成的形态、自由骨骼运动等,只有通过3D StudioMAX或Autodesk Maya实现多套模型、重新展开UV,重绘贴图以及重新制作动画才可以完成,制作动画所需模型的效率较低,而且制作成本较大、制作周期较长,无法满足人们对成本效率的要求。
发明内容
本申请实施例提供了一种模型构建方法、装置及终端设备,可以有效地解决现有使用二维/三维动画模型制作软件制作模型效率较低,制作成本较大、制作周期较长,无法满足人们对成本效率的要求的问题。
第一方面,本申请实施例提供了一种模型构建方法,包括:
在第一方面的第一种可能的实现方式中,包括:
获取构建第一模型所需要的积木构件,所述积木构件至少为两个;
将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;
对所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;
将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型。
示例性的,所述第二模型中的每一个积木构件同属于一个节点。
在第一方面的第二种可能的实现方式中,在所述将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型的步骤之后,包括:
为所述关节添加标识,根据所述标识生成所述第一模型的关键帧;
基于所述关键帧,生成应用程序API接口,以便于通过所述API接口调用应用程序控制所述第一模型做类关节运动。
在第一方面的第三种可能的实现方式中,所述将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型的步骤,包括:
将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节;
建立所述关节与其他子模型的节点关系,使得其他子模型能够通过所述关节完成相应的运动效果;
根据建立节点关系后的子模型,构建得到能够绕所述关节旋转变换的所述第一模型。
在第一方面的第四种可能的实现方式中,所述对所述第二模型进行分组,得到至少两个子模型的步骤,包括:
当在所述场景中检测到预设触摸操作时,确定所述触摸操作对应的坐标区域;
获取在所述坐标区域内的积木构件标识;
将在所述坐标区域内的积木构件标识对应的积木构件划分为一组;
将所述一组的积木构件进行捆绑操作,得到一个子模型。
在第一方面的第五种可能的实现方式中,所述对所述第二模型进行分组,得到至少两个子模型的步骤,包括:
读取预配置的分组信息;
根据所述分组信息对所述第二模型进行分组,得到至少两个子模型。
在第一方面的第六种可能的实现方式中,所述获取构建第一模型所需要的积木构件的步骤,包括:
读取预设的模型配置文件,所述模型配置文件包含积木构件标识;
从所述模型配置文件中,根据所述积木构件标识调用对应的积木构件以完成所述第一模型的构建。
第二方面,本申请实施例提供了一种模型构建装置,包括:
在第二方面的第一可能实现方式中,该装置包括:
积木构件获取单元,用于获取构建第一模型所需要的积木构件,所述积木构件至少为两个;
第一个模型构建单元,用于将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;
分组单元,用于对所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;
第二个模型构建单元,用于将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型。
示例性的,所述第二模型中的每一个积木构件同属于一个节点。
在第二方面的第二种可能的实现方式中,该装置包括:
关键帧生成单元,用于为所述关节添加标识,根据所述标识生成所述第一模型的关键帧;
API接口生成单元,用于基于所述关键帧,生成应用程序API接口,以便于通过所述API接口调用应用程序控制所述第一模型做类关节运动。
在第二方面的第三种可能的实现方式中,所述第二个模型构建单元,具体还用于:
将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节;
建立所述关节与其他子模型的节点关系,使得其他子模型能够通过所述关节完成相应的运动效果;
根据建立节点关系后的子模型,构建得到能够绕所述关节旋转变换的所述第一模型。。
在第二方面的第四种可能的实现方式中,所述分组单元,具体用于:
当在所述场景中检测到预设触摸操作时,确定所述触摸操作对应的坐标区域;
获取在所述坐标区域内的积木构件标识;
将在所述坐标区域内的积木构件标识对应的积木构件划分为一组;
将所述一组的积木构件进行捆绑操作,得到一个子模型。
在第二方面的第五种可能的实现方式中,所述分组单元,具体还用于:
读取预配置的分组信息;
根据所述分组信息对所述第二模型进行分组,得到至少两个子模型。
在第二方面的第六种可能的实现方式中,所述积木构件获取单元,具体用于:
读取预设的模型配置文件,所述模型配置文件包含积木构件标识;
从所述模型配置文件中,根据所述积木构件标识调用对应的积木构件以完成所述第一模型的构建。
第三方面,本申请实施例提供了一种终端设备,包括:
积木构件获取单元,用于获取构建第一模型所需要的积木构件,所述积木构件至少为两个;
第一个模型构建单元,用于将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;
分组单元,用于对所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;
第二个模型构建单元,用于将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型。
第四方面,本申请实施例提供了一种计算机可读存储介质,包括:
积木构件获取单元,用于获取构建第一模型所需要的积木构件,所述积木构件至少为两个;
第一个模型构建单元,用于将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;
分组单元,用于对所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;
第二个模型构建单元,用于将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第二方面中任一项所述的模型构建方法。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第二方面中的相关描述,在此不再赘述。
本申请实施例与现有技术相比存在的有益效果是:通过获取构建第一模型所需要的积木构件;将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型,提高了构建制作动画所需模型的制作效率,并缩短了制作周期,降低了制作成本,有效地实现了人们对成本效率的控制目的。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种模型构建方法的实现流程图;
图2是本申请实施例提供的一种获取积木构件的方法的具体实现流程图;
图3是本申请实施例提供的一种对第二模型进行分组的方法的具体实现流程图;
图4是本申请实施例提供的一种第二模型的分组示意图;
图5是本申请实施例提供的另一种对第二模型进行分组的方法的具体实现流程图;
图6-1、6-2、6-3是本申请实施例提供的一组子模型B通过关节C控制子模型A旋转的效果示意图;
图7是本申请实施例提供的一种模型构建装置的结构示意图;
图8是本申请实施例提供的一种终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定装置结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。请参考图1,图1示出了本申请实施例提供的一种模型构建方法的实现流程,详述如下:
在步骤S101中,获取构建第一模型所需要的积木构件。
在本申请实施例中,模型为类似于积木结构,且可以赋予运动能力的各类动画模型,包括但不限于积木型机器人。
在本申请的一些实施例中,所述模型为由至少两个积木构件组成的模型,每个积木构件之间具有相应的节点连接关系。在本申请的一些实施例中,每个积木构件对应有唯一的积木构件标识,通过积木构件标识可以获取到相应的积木构件。
具体到本申请实施例中,获取用户选中的用于构建第一模型所需的积木构件,比如用户通过点击、拖拽、复制等操作选择Unity 3D游戏开发工具的面板中显示的积木构件标识时,将获取用户所选择的积木构件标识对应的积木构件,并放置在场景中显示,便于用户对其所选择的积木构件进行相应操作完成具有某一形态的模型。
在本申请的另一些实施例中,用户将预设的模型配置文件,比如从3D Studio Max或者Autodesk Maya等三维动画软件中导出的文件导入到场景中,该模型配置文件包含的积木构件标识对应的积木构件,将按照相应的位置在场景中完成模型的初步构建。
请参考图2,图2示出了本申请实施例提供的一种获取积木构件的方法的具体实现步骤,详述如下:
在步骤S201中,读取预设的模型配置文件。
在本申请实施例中,所述模型配置文件包含积木构件标识,所述模型配置文件包括但不限从三维动画软件中导出的.FBX文件。
需要说明的是,虽然Unity 3D支持直接导入Autodesk Maya的.ma文件,但是由于并不是所有的Maya节点都能正确导入到Unity 3D中,需要对模型清理后导出成.FBX格式的文件即.FBX文件。
还需要说明的是,这里所指的清理,包括但不限于检查模型的发现方向,删除多余无用的节点,删除无用的构造历史,冻结转换Transform属性等。
在步骤S202中,从所述模型配置文件中,根据所述积木构件标识调用对应的积木构件以完成所述第一模型的构建。
在本申请实施例中,每个积木构件都对应有唯一的积木构件标识,根据积木构件标识可以调用对应的积木构件,而模型配置文件中包含有构件第一模型所需要的积木构件对应的积木构件标识,在根据模型配置文件包含的积木构件标识,调用对应的积木构件后即可获得构成第一模型所需要的积木构件。
需要说明的是,预设的模型配置文件包括但不限包含有模型相关信息的.FBX文件。
在步骤S102中,将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型。
在本申请实施例中,场景为场景可视区域,具体为用于组织不同模型和/或零件比如积木构件在虚拟世界中的关系的变换操作区域,该变换操作区域包括但不限于Unity 3D游戏开发工具中的场景面板、Unreal Engine 4游戏开发工具中的场景面板。
在本申请的一些实施例中,第二模型中的每一个积木构件同属于一个节点,也即初步构建得到的模型为无节点关联的一个模型。
在本申请的一些实施例中,通过获取用户在场景中的预设操作比如拖拽、删除、复制、移动积木构件等操作,完成模型的初步构建。
在本申请的另一些实施例中,通过读取预设的模型配置文件,通过模型配置文件中的积木构件标识调用对应的积木构件,按照模型配置文件的配置规则,在场景中完成模型的初步构建。
在步骤S103中,对所述第二模型进行分组,得到至少两个子模型。
在本申请实施例中,每个子模型包含至少两个积木构件。对第二模型进行分组的目的,是将第二模型中的积木构件按照一定的规则划分成不同的组,以使得在组与组即子模型与子模型之间能够建立预设的节点关联,从而使得模型能够快速地实现多样化的运动形态。
在本申请的一些实施例中,用户在场景中可以通过预设方式选择一组积木构件,将在框内的积木构件视为一组,通过该方式可以将第二模型中的积木构件分成至少两组。
请参考图3,图3示出了本申请实施例提供的一种对第二模型进行分组的方法的具体实现步骤,详述如下:
在步骤S301中,当在所述场景中检测到预设触摸操作时,确定所述触摸操作对应的坐标区域。
在本申请实施例中,预设触摸操作为使用游戏开发工具中的预设图形工具比如选中框等方式选中所要操作的界面或内容。当在所述场景中检测到预设触摸操作比如用户使用鼠标通过选中框,从场景中框选中第二模型的某一部分时,确定该触摸操作对应的坐标区域。
需要说明的是,因为触摸操作是要选取一部分所要操作的内容例如第二模型中的一部分积木构件,这时,需要触摸操作所选择的坐标区域范围内的所有对象即为该触摸操作选中的对象,也即需要确定触摸操作对应的坐标区域,才能获取该坐标区域内的对象比如积木构件。
在步骤S302中,获取在所述坐标区域内的积木构件标识。
在本申请实施例中,每个坐标区域内至少对应有一个积木构件标识,根据坐标区域可以实现将第二模型中的积木构件进行分组,一个坐标区域对应一组积木构件。
在步骤S303中,将在所述坐标区域内的积木构件标识对应的积木构件划分为一组。
如图4所示,将第二模型中在某一坐标区域内(方框范围内)的积木构件标识对应的积木构件划分为一组。
在步骤S304中,将所述一组的积木构件进行捆绑操作,得到一个子模型。
在本申请实施例中,将一组积木构件进行捆绑操作,实际是建立该组积木构件的子节点关系,以使得该组积木构件可以作为一个整体绕着某个关节旋转,完成两组积木构件的相对变换。
在本申请的另一些实施例中,通过读取预配置的分组信息,然后根据该分组信息对第二模型中的积木构件进行分组,得到至少两个子模型。
请参考图5,图5示出了本申请实施例提供的另一种对第二模型进行分组的方法的具体实现步骤,详述如下:
在步骤S501中,读取预配置的分组信息。
在本申请实施例中,每个积木构件都对应有一个具有唯一性的积木构件标识。将一个模型中包含的积木构件标识预先进行分组,每组中包含至少两个积木构件标识。预配置的分组信息为预先设置的某一模型的分组信息,根据该分组信息可以对该模型中的积木构件标识进行分组。
在步骤S502中,根据所述分组信息对所述第二模型进行分组,得到至少两个子模型。
在本申请实施例中,通过分组信息对场景中的第二模型进行分组,具体是通过分组信息中每组包含的积木构件标识对第二模型中的积木构件进行划分,得到至少两组积木构件,再对每组积木构件进行捆绑操作形成一个子模型,以使得该子模型能够实现绕着某个关节完成相对变换。
在步骤S104中,将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型。
在本申请实施例中,在对第二模型进行分组后,在每个子模型之间,允许有一个子模型作为关节进行旋转变换,而这一个作为关节的子模型,可以由用户通过游戏开发工具指定,也可以通过预设的模型配置文件设定,这里不做具体限定。
在本申请的一些实施例中,如果指定多个子模型作为关节,即当存在多个关节时,可以为不同的关节设定不同的标识或ID,由于关节具有旋转变换功能,从而可以使得模型可以轻易的完成其他由于关节产生旋转而导致关联的运动效果,提高了模型动画的生产效率,并降低了积木型模型的动画制作成本,减少了动画制作周期,提高了动画制作效率。
需要说明的是,这里所指的关节可以理解为枢,具体为连接两个子模型的关键节点,通过该关键节点建立三个不同的子模型的连接关系。
具体的,步骤S104包括:
步骤S1041,将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节。
步骤S1042,建立所述关节与其他子模型的节点关系,使得其他子模型能够通过所述关节完成相应的运动效果。
在本申请实施例中,建立关节与其他子模型的节点关系,实际上是将该关节相连的其他子模型中的一个设定为父节点,另外一个子模型作为子节点,父节点通过关节带动子节点完成相应的旋转动作。
步骤S1043,根据建立节点关系后的子模型,构建得到能够绕所述关节旋转变换的所述第一模型。
在本申请实施例中,将对所述第二模型进行分组后得到的至少两个子模型中的任意一个子模型设定为用于进行旋转变换的关节,以便于通过该关节实现模型的运行效果。
具体到本申请实施例中,在设定子模型与子模型之间的关节后,建立所设定关节的两个子模型之间的连接关系,形成一个可以绕着该关节进行旋转的模型。两个子模型以及其之间的关节,构成一个旋转轴,在关节旋转时,将同时实现该两个子模型的同步旋转。
在本申请的一些实施例中,在设定用于进行旋转变换的关节后,如果存在多个关节,为了实现能够通过不同关节控制模型的旋转运动的目的,在步骤S104之后,还包括:
在步骤S105中,为所述关节添加标识,根据所述标识生成所述第一模型的关键帧。
在本申请实施例中,为每个关节添加不同的标识,根据该标识生成第一模型的至少一个关键帧,这里所指的关键帧为角色或者物体运动或变化中的关键动作所处的那一帧。
在步骤S106中,基于所述关键帧,生成应用程序API接口,以便于通过所述API接口调用应用程序控制所述第一模型做类关节运动。
在本申请实施例中,基于关键帧生成应用程序(Application ProgrammingInterface,API)接口,通过该API接口调用相应的应用程序来控制第一模型完成类关节运动,比如如图6-1、图6-2、图6-3所示,子模型B通过关节C控制子模型A旋转了76°、133°、290°。
如图6-1、图6-2、图6-3所示,图6-1、图6-2、图6-3为由子模型A、子模型B和关节C构成的模型,在控制关节C旋转时,可以轻易的完成子模型A和子模型B由于关节C产生旋转而导致关联的运动效果。
在本申请实施例中,通过获取构建第一模型所需要的积木构件;将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型,提高了构建制作动画所需模型的制作效率,并缩短了制作周期,降低了制作成本,有效地实现了人们对成本效率的控制目的。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑控制,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的模型构建方法,图7示出了本申请实施例提供的模型构建装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图7,该装置包括:
积木构件获取单元71,用于获取构建第一模型所需要的积木构件,所述积木构件至少为两个;
第一个模型构建单元72,用于将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;
分组单元73,用于对所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;
第二个模型构建单元74,用于将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型。
示例性的,所述第二模型中的每一个积木构件同属于一个节点。
在本申请的一些实施例中,该装置包括:
关键帧生成单元,用于为所述关节添加标识,根据所述标识生成所述第一模型的关键帧;
API接口生成单元,用于基于所述关键帧,生成应用程序API接口,以便于通过所述API接口调用应用程序控制所述第一模型做类关节运动。
在本申请的另一些实施例中,所述第二个模型构建单元,具体用于:
将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节;
建立所述关节与其他子模型的节点关系,使得其他子模型能够通过所述关节完成相应的运动效果;
根据建立节点关系后的子模型,构建得到能够绕所述关节旋转变换的所述第一模型。
在本申请的一些实施例中,所述分组单元73具体用于:
当在所述场景中检测到预设触摸操作时,确定所述触摸操作对应的坐标区域;
获取在所述坐标区域内的积木构件标识;
将在所述坐标区域内的积木构件标识对应的积木构件划分为一组;
将所述一组的积木构件进行捆绑操作,得到一个子模型。
在本申请的一些实施例中,所述分组单元73具体还用于:
读取预配置的分组信息;
根据所述分组信息对所述第二模型进行分组,得到至少两个子模型。
在本申请的一些实施例中,所述积木构件获取单元71具体用于:
读取预设的模型配置文件,所述模型配置文件包含积木构件标识;
从所述模型配置文件中,根据所述积木构件标识调用对应的积木构件以完成所述第一模型的构建。
在本申请实施例中,通过获取构建第一模型所需要的积木构件;将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型,提高了构建制作动画所需模型的制作效率,并缩短了制作周期,降低了制作成本,有效地实现了人们对成本效率的控制目的。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种终端设备,该终端设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意各个方法实施例中的步骤。
图8是本申请一实施例提供的一种终端设备的示意图。如图8所示,该实施例的终端设备8包括:处理器88、存储器81以及存储在所述存储器81中并可在所述处理器88上运行的计算机程序82。所述处理器88执行所述计算机程序82时实现上述任意各个方法实施例中的步骤,例如图1所示的步骤101至104。或者,所述处理器88执行所述计算机程序82时实现上述各装置实施例中各单元的功能,例如图8所示模块71至74的功能。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (9)
1.一种模型构建方法,其特征在于,包括:
获取构建第一模型所需要的积木构件,所述积木构件至少为两个;
将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;
对所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;
将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型;
其中,在所述将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型的步骤之后,包括:
为所述关节添加标识,根据所述标识生成所述第一模型的关键帧;
基于所述关键帧,生成应用程序API接口,以便于通过所述API接口调用应用程序控制所述第一模型做类关节运动。
2.如权利要求1所述的模型构建方法,其特征在于,所述将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型的步骤,包括:
将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节;
建立所述关节与其他子模型的节点关系,使得其他子模型能够通过所述关节完成相应的运动效果;
根据建立节点关系后的子模型,构建得到能够绕所述关节旋转变换的所述第一模型。
3.如权利要求1或2所述的模型构建方法,其特征在于,所述对所述第二模型进行分组,得到至少两个子模型的步骤,包括:
当在所述场景中检测到预设触摸操作时,确定所述触摸操作对应的坐标区域;
获取在所述坐标区域内的积木构件标识;
将在所述坐标区域内的积木构件标识对应的积木构件划分为一组;
将所述一组的积木构件进行捆绑操作,得到一个子模型。
4.如权利要求1或2所述的模型构建方法,其特征在于,所述对所述第二模型进行分组,得到至少两个子模型的步骤,包括:
读取预配置的分组信息;
根据所述分组信息对所述第二模型进行分组,得到至少两个子模型。
5.如权利要求1所述的模型构建方法,其特征在于,所述获取构建第一模型所需要的积木构件的步骤,包括:
读取预设的模型配置文件,所述模型配置文件包含积木构件标识;
从所述模型配置文件中,根据所述积木构件标识调用对应的积木构件以完成所述第一模型的构建。
6.如权利要求1所述的模型构建方法,其特征在于,所述第二模型中的每一个积木构件同属于一个节点。
7.一种模型构建装置,其特征在于,包括:
积木构件获取单元,用于获取构建第一模型所需要的积木构件,所述积木构件至少为两个;
第一个模型构建单元,用于将所述积木构件放置在场景中,并在所述场景中完成模型的初步构建,得到第二模型;
分组单元,用于对所述第二模型进行分组,得到至少两个子模型,其中每个子模型包含至少两个积木构件;
第二个模型构建单元,用于将所述的至少两个子模型中的一个子模型设定为用于进行旋转变换的关节,得到能够绕所述关节旋转变换的所述第一模型;
其中,所述装置还包括:
关键帧生成单元,用于为所述关节添加标识,根据所述标识生成所述第一模型的关键帧;
API接口生成单元,用于基于所述关键帧,生成应用程序API接口,以便于通过所述API接口调用应用程序控制所述第一模型做类关节运动。
8.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的模型构建方法。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的模型构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911420509.0A CN111179422B (zh) | 2019-12-31 | 2019-12-31 | 一种模型构建方法、装置及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911420509.0A CN111179422B (zh) | 2019-12-31 | 2019-12-31 | 一种模型构建方法、装置及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111179422A CN111179422A (zh) | 2020-05-19 |
CN111179422B true CN111179422B (zh) | 2023-08-04 |
Family
ID=70646496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911420509.0A Active CN111179422B (zh) | 2019-12-31 | 2019-12-31 | 一种模型构建方法、装置及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111179422B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760260B (zh) * | 2021-09-03 | 2023-05-23 | 福建天泉教育科技有限公司 | 一种基于xLua的3D场景和角色驱动方法及终端 |
CN114596393A (zh) * | 2022-01-24 | 2022-06-07 | 深圳市大富网络技术有限公司 | 一种骨骼模型生成方法、装置、系统及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101675458A (zh) * | 2007-03-16 | 2010-03-17 | 乐高公司 | 积木构件模型的组装说明的自动生成 |
KR101519775B1 (ko) * | 2014-01-13 | 2015-05-12 | 인천대학교 산학협력단 | 오브젝트의 모션 인식 기반 애니메이션 생성 방법 및 장치 |
CN107545091A (zh) * | 2016-12-21 | 2018-01-05 | 中南大学 | 一种可拆装多元相图模型及其制备方法和应用 |
CN108961404A (zh) * | 2018-06-27 | 2018-12-07 | 衡阳师范学院 | 一种积木式构建不规则模型的方法和系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008502960A (ja) * | 2004-06-17 | 2008-01-31 | レゴ エー/エス | 組立てブロックモデルのための組立て指示の自動作成 |
US9747668B2 (en) * | 2016-01-21 | 2017-08-29 | Disney Enterprises, Inc. | Reconstruction of articulated objects from a moving camera |
CN107845135B (zh) * | 2017-11-15 | 2020-11-20 | 山东师范大学 | 一种三维仿真模型及模型库的构建方法及装置 |
-
2019
- 2019-12-31 CN CN201911420509.0A patent/CN111179422B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101675458A (zh) * | 2007-03-16 | 2010-03-17 | 乐高公司 | 积木构件模型的组装说明的自动生成 |
KR101519775B1 (ko) * | 2014-01-13 | 2015-05-12 | 인천대학교 산학협력단 | 오브젝트의 모션 인식 기반 애니메이션 생성 방법 및 장치 |
CN107545091A (zh) * | 2016-12-21 | 2018-01-05 | 中南大学 | 一种可拆装多元相图模型及其制备方法和应用 |
CN108961404A (zh) * | 2018-06-27 | 2018-12-07 | 衡阳师范学院 | 一种积木式构建不规则模型的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111179422A (zh) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101930627B (zh) | 一种基于二维户型图的三维户型建模方法 | |
CN103440357B (zh) | 虚拟现实漫游场景生成方法及系统 | |
CN111179422B (zh) | 一种模型构建方法、装置及终端设备 | |
CN106484988A (zh) | 一种三维点云数据逆向建立bim模型的方法 | |
CN108597032B (zh) | 将建筑信息模型导入Unity3D中显示方法及系统 | |
CN103236088B (zh) | 基于复合网格的三维地质体构造建模方法与系统 | |
CN106056655B (zh) | 一种可编辑的虚拟摄像机系统和方法 | |
CN103886638A (zh) | 在划分为多个区域的三维场景中对对象的物理行为仿真 | |
KR100503789B1 (ko) | 렌더링시스템, 렌더링방법 및 그 기록매체 | |
US20190318523A1 (en) | Methods and Systems for Monitoring User Activity and Managing Controllers in 3-D Graphics | |
CN113112581A (zh) | 三维模型的纹理贴图生成方法、装置、设备及存储介质 | |
CN111199577A (zh) | 一种房屋虚拟装修方法 | |
CN112182718B (zh) | 基于bim与3d技术的构件设计方法、装置及存储介质 | |
CN104881518A (zh) | 一种飞行器的三维视景仿真系统 | |
CN111870949A (zh) | 游戏场景中的对象处理方法、装置及电子设备 | |
CN111369670A (zh) | 一种实时构建实训数字孪生模型的方法 | |
CN109063223B (zh) | Bim模型的轻量化方法和装置以及bim模型的处理方法和系统 | |
CN113781642A (zh) | 一种基于减面算法的三维模型多层级lod的生成方法 | |
CN112184894B (zh) | 三维建模的雕塑方法、装置及设备、存储介质 | |
CN112337093B (zh) | 一种虚拟对象的分簇方法、装置、存储介质和电子装置 | |
CN108499109B (zh) | 一种基于ue引擎实现物品可实时单侧缩放的方法 | |
CN105205263B (zh) | 一种电力设备三维模型快速搭建设备及其应用 | |
WO2023184357A1 (zh) | 一种表情模型制作的方法、装置及电子设备 | |
Alawadhi et al. | Deep Learning from Parametrically Generated Virtual Buildings for Real-World Object Recognition | |
CN107767075A (zh) | 一种适用于大规模三维模型的标准化生产方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |