CN111951360B - 动画模型处理方法、装置、电子设备及可读存储介质 - Google Patents

动画模型处理方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN111951360B
CN111951360B CN202010820850.1A CN202010820850A CN111951360B CN 111951360 B CN111951360 B CN 111951360B CN 202010820850 A CN202010820850 A CN 202010820850A CN 111951360 B CN111951360 B CN 111951360B
Authority
CN
China
Prior art keywords
model
vertex
driven
proxy
main driving
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
Application number
CN202010820850.1A
Other languages
English (en)
Other versions
CN111951360A (zh
Inventor
刘杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010820850.1A priority Critical patent/CN111951360B/zh
Publication of CN111951360A publication Critical patent/CN111951360A/zh
Application granted granted Critical
Publication of CN111951360B publication Critical patent/CN111951360B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请实施例提供了一种动画模型处理方法、装置、电子设备及可读存储介质。其中,该方法中可以通过云服务器进行数据计算,该方法包括:在主驱动模型的位置发生变化时,获取主驱动模型的关联模型,关联模型包括代理模型和被驱动模型;根据主驱动模型位置变化后的各顶点的位置,确定代理模型的各顶点的位置,代理模型的各顶点包括第一顶点和第二顶点,其中,第一顶点为被主驱动模型驱动的顶点;根据代理模型的各顶点的位置,确定被驱动模型各顶点的位置,以根据被驱动模型各顶点的位置控制被驱动模型的变化。本申请实施例中,通过代理模型使得被驱动模型的顶点不再是各自独立的运动,此时即能和主驱动模型一样产生变化,也可以保持自身原有形态。

Description

动画模型处理方法、装置、电子设备及可读存储介质
技术领域
本申请涉及计算机技术领域,具体而言,本申请涉及一种动画模型处理方法、装置、电子设备及可读存储介质。
背景技术
目前,动画角色在运动过程中,动画角色的附属配件往往也需要产生变化。例如,游戏中的动画角色在运动过程中,动画角色的脸型可以根据用户的自由调节产生变化,或者是衣服随着运动产生褶皱、摇摆等。此时动画模型的一些附属配件,比如脸上的眼镜,或者衣服的腰带,如果不能跟着一起运动、还保持原有的形状,那么就会产生严重的穿帮问题。
目前,可以利用Wrap动画变形器来解决这一问题,该方案是把动画角色的脸部看作驱动模型,把眼镜等配件看作被驱动模型,此时应用Wrap动画变形器,就可以实现当脸部发生动画变形时,原来脸上佩戴的眼睛,能自动地跟随发生运动。在这种驱动关系的作用下,被驱动模型虽然能很好地跟随主驱动模型发生旋转,但是同时也发生了明显的褶皱,无法保持原有形态。
可见,现有方案虽然能够保证被驱动模型跟随主驱动模型变化,但是对于被驱动模型往往无法保持原有的基本形态。
发明内容
本申请的目的旨在至少能解决上述的技术缺陷之一。
一方面,本申请实施例提供了一种动画模型处理方法,该方法包括:
在主驱动模型的位置发生变化时,获取主驱动模型的关联模型,关联模型包括代理模型和被驱动模型;
根据主驱动模型位置变化后的各顶点的位置,确定代理模型的各顶点的位置,代理模型的各顶点包括第一顶点和第二顶点,其中,第一顶点为被主驱动模型驱动的顶点;
根据代理模型的各顶点的位置,确定被驱动模各顶点的位置,以根据被驱动模型各顶点的位置控制被驱动模型的变化。
另一方面,本申请实施例提供了一种动画模型处理装置,该装置包括:
模型获取模块,用于在主驱动模型的位置发生变化时,获取主驱动模型的关联模型,关联模型包括代理模型和被驱动模型;
位置确定模块,用于根据主驱动模型位置变化后的各顶点的位置,确定代理模型的各顶点的位置,代理模型的各顶点包括第一顶点和第二顶点,其中,第一顶点为被主驱动模型驱动的顶点;
控制模块,用于根据代理模型的各顶点的位置,确定被驱动模型各顶点的位置,以根据被驱动模型各顶点的位置控制被驱动模型的变化。
再一方面,本申请实施例提供了一种电子设备,包括处理器以及存储器:存储器被配置用于存储计算机程序,计算机程序在由处理器执行时,使得处理器执行上述中一种动画模型处理方法。
又一方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质用于存储计算机程序,当计算机程序在计算机上运行时,使得计算机可以执行上述中动画模型处理方法。
另一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行动画模型处理方法。
本申请实施例提供的技术方案带来的有益效果是:
在本申请实施例中,在主驱动模型的位置发生变化时,可以通过增加的代理模型驱动被驱动模型随之产生变化,并且由于主驱动模型可以通过代理模型驱动被驱动模型的部分顶点(即第一顶点)发生变化,此时在主驱动控制变化时,代理模型则主要发生旋转和线性地拉伸等线性变化,进而被驱动模型在基于代理模型的线性形变时,也将会仅发生旋转和线性地拉伸,进而可以保持原有的形态。也就是说,本申请实施例中通过代理模型使得被驱动模型的顶点不再是各自独立的运动,而是彼此之间有线性地关联,此时被驱动模型的动画变形即能和主驱动模型一样发生旋转、又能适当地产生线性拉伸或压缩,适配主驱动模型,同时又保持了自身的形态不发生扭曲,提升了动画的表达力,丰富了用户体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种现有技术中动画处理模型的原理示意图;
图2为本申请实施例提供的一种Wrap动画变形器的工作原理示意图;
图3为本申请实施例提供的一种动画模型的示意图;
图4为本申请实施例提供的一种动画模型变形后的示意图;
图5为本申请实施例提供的另一种动画模型变形后的示意图;
图6为本申请实施例提供的一种动画模型处理方法的流程示意图;
图7为本申请实施例提供的一种用于设置驱动关系的界面示意图;
图8为本申请实施例提供的一种动画模型处理方法的原理示意图;
图9为本申请实施例提供的又一种动画模型的示意图;
图10为本申请实施例提供的又一种动画模型变形后的示意图;
图11为本申请实施例提供的一种动画模型处理装置的结构示意图;
图12为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示
出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本申请实施例中提供了一种动画模型处理方法,该方法可以由终端设备或服务器执行。其中,该终端设备可以智能手机、平板电脑、笔记本电脑、台式计算机等,服务器可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器等,但并不局限于此,本申请在此不做限制。
可选的,若本申请实施例中提供的方法通过服务器执行,则在主驱动模型的位置发生变化时,可以在云服务器中获取主驱动模型的关联模型,然后根据主驱动模型位置变化后的各顶点的位置,云计算确定出代理模型的部分顶点的位置、代理模型中除部分顶点之外的其它顶点的位置、以及根据代理模型的各顶点的位置,确定出被驱动模型各顶点的位置。
其中,云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS(Infrastructure as a Service,基础设施即服务)层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
首先对本申请涉及的几个名词进行介绍和解释:
DCC软件:生产制作动画角色所采用的一类软件的统称,目前典型的软件包括Maya、Blender和Houdini等。
动画角色:指由3d(3 Dimensions,三维)游戏引擎或DCC软件,借助3d图形建模渲染技术绘制的虚拟角色。在本申请实施例中,动画角色数据主要包含了角色表面模型(即动画模型)。
表面模型(即本申请实施例中的动画模型):指动画角色的外表模型数据,比如皮肤,衣服,鞋子等数据在3d引擎中由一个个三角面构成,而每个三角面,又有3个顶点构成,即由顶点构成了三角面,又由三角面构成了模型。
动画变形器:指的是根据动画角色的运动,在不同地时刻动态地修改角色表面模型的每个顶点的具体空间位置,从而产生动画的效果。不同的动画变形器,会根据不同地原理,来动态地产生表面模型动画。
Wrap(收缩包裹)动画变形器:一种3d游戏引擎或者DCC软件中的动画工具,通过一个表面模型A中的顶点,按照一定的规则来驱动、改变另一个表面模型B中的顶点位置,从而使得表面模型B的外观发生改变。如图1所示,它的原理是用一个顶点数量较少的表面模型(即“主驱动模型”或“低模”)产生复杂动画,然后通过Wrap动画变形器利用低模(图中的低模动画)驱动角色的实际表面模型(可称之为“被驱动模型”或“高模”,图中为高模动画,其拥有很高数量的顶点)。
其中,Wrap动画变形器的工作可以分成预计算和动画驱动两个部分。其中,在预计算环节,游戏制作人员指定一个低模和一个被驱动的高模。由于两个模型的顶点数量不一致,此时需要计算高模上的哪些顶点,如何被低模上的哪些三角面驱动。然后对该三角面建立局部坐标系,并将高模上的所有相应顶点,都通过数学计算变换到该坐标系下,进一步通过简单地计算构建驱动矩阵,即建立三角面与顶点的驱动关系,当三角面的位置、形状发生改变时,顶点也能跟着发生改变。
动画驱动环节则是发生在游戏运行时,此时在其他复杂变形器的作用下,低模首先发生形状变化(即低模的顶点位置发生变化,它们所构成的三角面片也发生形状改变),然后Wrap动画变形器按照预计算环节的结果,用低模的每个三角面位置去修改对应的高模上的顶点的位置。这时,由于低模上的每个三角面的顶点和相应高模顶点的驱动矩阵已经建立,只要根据新的三角面的位置信息,然后乘上预计算好的驱动矩阵,就完成了驱动高模顶点的过程。
在一示例中,如图2所示,假设首先在游戏制作阶段,针对高模上一点P1被低模上V1驱动(该点不是模型上的实际顶点,而只是一个虚拟空间位置,仅仅拥有一个坐标值),并建立P1和V1之间(可以简称为P1-V1)的驱动矩阵。此时在游戏运行阶段,在其他动画变形器的驱动下,低模上一点V0运动到另外一点V0’位置,由于V0的运动,使得虚拟点V1的坐标值也发生了变化,变成了V1’的位置。进一步的,在Wrap动画变形器的作用下,根据新的V1’的位置、以及P1-V1的驱动矩阵,可以重新计算高模上P1点的位置,并使其运动到新的位置P1’。基于同样的原理,对高模上的所有顶点(P0和P2)进行同样的计算,最终完成整个高模的动画形变。
目前,动画角色在运动过程中,动画角色中的附属配件往往也需要产生变形、运动。例如,在游戏运行中往往一些动画角色变形需要非常复杂的计算过程,比如布料模拟(需要模拟整个角色的衣服上所有顶点的运动变形,此时需要涉及到复杂的数学建模、求解计算)。如果在高模上直接进行布料模拟,就要对每个模型上的顶点,进行非常复杂的数学计算,这个过程的要花费大量的时间。这时,可以建立一个顶点数量相对很少的低模,即主驱动模型,然后在低模上进行复杂地计算,得到表面变形;然后再由wrap动画变形器,用低模驱动最终角色表面模型(即被驱动模型)的外观变化。
例如,主驱动模型和被驱动模型如图3所示,当在Wrap动画变形器中设置好驱动关系后(即主驱动模型通过Wrap动画变形器,驱动被驱动模型),此时在Wrap动画变形器内部即建立了顶点驱动关系,被驱动模型上的每一个顶点都可以在主驱动模型上找到对应的驱动点(图中的箭头指向即为对应的顶点)。现假设主驱动模型产生了如图4所示的动画变形,即发生了旋转(图中的虚线箭头所示)和褶皱(模型上的顶点所体现),此时在Wrap动画变形器的驱动下,被驱动模型就会产生下图5所示的跟随变形效果。基于图5可知,被驱动模型虽然能很好地跟随主驱动模型发生旋转,但是同时也发生了明显的褶皱,如果被驱动模型刚性物体的模型,如是眼镜的镜片或者镜架,那么在游戏中将会看到眼镜发生了扭曲,从而严重影响游戏体验。也就是说,当采用Wrap动画变形器使动画角色在运动过程中,在动画角色中的附属配件也产生变形、运动时,刚性物体无法保持原有的形态。
此外,现有技术中还可以采用骨骼绑定驱动的方案使动画角色在运动过程中,动画角色中的附属配件也产生变形、运动时,但是这种方案,一般只适用于将附件关联到动画角色身上某一个点的情况。而采用Procedural动画的方式时,需要针对每一种配件编写单独的插件,计算过程非常复杂,整体工作量非常大。
基于此,本申请实施例提供一种动画模型处理方法,旨在解决现有技术中的部分或全部技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图6示出了本申请实施例中所提供的一种动画模型处理方法的流程示意图,该方法可以由终端设备或服务器执行,该终端设备可以智能手机、平板电脑、笔记本电脑、台式计算机等;服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器,本申请在此不做限制。
如图6所示,该方法可以包括:
步骤S101,在主驱动模型的位置发生变化时,获取主驱动模型的关联模型,关联模型包括代理模型和被驱动模型。
其中,主驱动模型是能够驱动控制其他模型的表面模型,被驱动模型是受其他模型驱动控制的表面模型,其可以为动画角色中的皮肤、衣服、鞋子等数据的外表模型数据;关联模型指的是与主驱动模型相关联的模型,该关联模型中可以包括代理模型和被驱动模型,当主驱动模型产生变化时,被驱动模型也可以受到该主驱动模型的变化影响而产生变化;代理模型指的是代理主驱动模型间接控制被驱动控制的模型,也就是说,主驱动模型可以通过该代理模型间接控制被驱动模型。其中,代理模型可以根据主驱动模型和被驱动模型的具体形态预先配置,并将该驱动模型和被驱动模型进行关联。
在一示例中,假设主驱动模型指的是动画角色脸部的模型,被驱动模型可以指的是动画角色上所佩戴的眼镜的模型,则可以根据主驱动模型和被驱动模型的形态预先设置代理模型,当动画角色脸部模型的位置发生变化时,此时可以获取代理模型,然后通过该代理模型控制眼镜模型的位置变化。
步骤S102,根据主驱动模型位置变化后的各顶点的位置,确定所述代理模型的各顶点的位置,代理模型的各顶点包括第一顶点和第二顶点,其中,第一顶点为被主驱动模型驱动的顶点。
在实际应用中,上述中的各模型(包括主驱动模型、代理模型和被驱动模型)可以由一个个三角面构成,而每个三角面又有3个顶点构成,即也就是说,上述中的各模型可以通过各顶点构成。
可选的,在本申请实施例中,主驱动模型可以驱动控制代理模型的部分顶点(即第一顶点),代理模型可以驱动控制被驱动模的顶点,以实现主驱动模型通过代理模型驱动被驱动模型发生变化,而主驱动模型具体可以驱动代理模型的哪些顶点(即第一顶点)发生变化可以根据实际需求预先配置,本申请实施例对此不限定。例如,当希望代理模型受主驱动模型影响较大时,可以将代理模型中受主驱动模型驱动控制的顶点(即第一顶点)的数量设置的多一些,当希望代理模型受主驱动模型影响较小时,可以将代理模型中受主驱动模型驱动控制的顶点的数量设置的少一些。
可选的,由于各模型可以通过各顶点构成,因此当主驱动模型的位置发生变化时,说明该主驱动模型中的顶点的位置发生了变化,并且由于代理模型可以被主驱动模型所驱动控制,则在主驱动模型的位置发生变化时,代理模型中受主驱动模型控制的第一顶点的位置可能发生变化,此时可以根据主驱动模型位置变化后的各顶点的位置,确定代理模型中受主驱动模型控制的第一顶点的位置。
可选的,由于主驱动模型可以驱动控制代理模型中的第一顶点,此时基于主驱动模型中位置变化后的各顶点的位置,可以确定出代理模型中第一顶点的位置,而为了知晓代理模型变化后的位置,此时还需要确定代理模型中除第一顶点之外的其他各顶点(即第二顶点)的位置,进而可以根据第一顶点的位置、以及第二顶点的位置,得出代理模型的各顶点变化后的位置。
步骤S103,根据代理模型的各顶点的位置,确定被驱动模型各顶点的位置,以根据被驱动模型各顶点的位置控制被驱动模型的变化。
可选的,由于主驱动模型可以通过代理模型间接驱动控制被驱动模型,且被驱动模型受代理模型驱动控制,进而在主驱动模型的位置发生变化时,可以先确定代理模型的各顶点的位置,然后再基于代理模型的各顶点的位置,确定出被驱动模型各顶点的位置,并根据被驱动模型各顶点的位置控制被驱动模型的变化,以实现主驱动模型间接控制被驱动模型变化。
在本申请实施例中,在主驱动模型的位置发生变化时,可以通过增加的代理模型驱动被驱动模型随之产生变化,此时主驱动控制被驱动模型时,被驱动模型主要基于代理模型进行线性形变,并且由于主驱动模型可以通过代理模型驱动被驱动模型的部分顶点(即第一顶点)发生变化,此时在主驱动控制变化后,代理模型主要发生了旋转和线性地拉伸等线性变化,进而被驱动模型在基于代理模型的线性形变时,也将会仅发生旋转和线性地拉伸,进而可以保持原有的形态。也就是说,本申请实施例中通过代理模型使得被驱动模型的顶点不再是各自独立的运动,而是彼此之间有线性地关联,此时被驱动模型的动画变形即能和主驱动模型一样发生旋转、又能适当地产生线性拉伸或压缩,适配主驱动模型,同时又保持了自身的形态不发生扭曲,提升了动画的表达力,丰富了用户体验。
在本申请可选的实施例中,主驱动模型的位置发生变化包括组成驱动模型的至少一个顶点的位置发生变化;
在主驱动模型的位置发生变化时,还包括:
获取主驱动模型对应的驱动关系,驱动关系包括主驱动模型的各顶点和代理模型的第一顶点之间的第一驱动关系,以及代理模型的各顶点和被驱动模型的各顶点之间的第二驱动关系;
根据主驱动模型位置变化后的各顶点的位置,确定所述代理模型的各顶点的位置,包括:
根据至少一个顶点变化后的位置,确定主驱动模型中除至少一个顶点之外其他各顶点的位置;
根据主驱动模型变化后的各顶点的位置和第一驱动关系,确定代理模型的第一顶点的位置;
确定代理模型中第二顶点的位置;
根据代理模型的各顶点的位置,确定被驱动模型各顶点的位置,包括:
根据代理模型的各顶点的位置和第二驱动关系,确定被驱动模型各顶点的位置。
具体的,由于主驱动模型、代理模型和被驱动模型可以通过各顶点组成,此时当主驱动模型中的至少一个顶点位置发生变化时,即可以视为主驱动模型的位置发生变化。
可选的,在主驱动模型的位置发生变化时,还可以获取主驱动模型对应的驱动关系,该驱动关系包括主驱动模型的各顶点和代理模型的第一顶点之间的第一驱动关系,以及代理模型的各顶点和被驱动模型的各顶点之间的第二驱动关系。具体的,在获取到驱动关系时,即可以基于第一驱动关系知晓代理模型的第一顶点具体被主驱动模型中的哪几个顶点驱动控制,基于第二驱动关系知晓被驱动模型的各顶点具体被代理模型中的哪个顶点驱动控制。
其中,主驱动模型对应的驱动关系可以预选配置。如可以预先确定代理模型中的哪几个顶点(即前文中的代理模型中的第一顶点)被主动驱动模型控制、以及该几个顶点中的每个顶点具体被主动驱动模型中的哪一个顶点驱动控制,而对于该几个顶点中的每个顶点,可以通过数学计算将其位置信息变换到主驱动模型的坐标系下,然后可以进一步通过简单地计算,构建该每个顶点与主动驱动模型中相对应的顶点之间驱动矩阵,此时代理模型中的部分顶点中的每一个顶点与主动驱动模型中的顶点之间的对应关系、以及对应的驱动矩阵即可视为主驱动模型的各顶点和代理模型的部分顶点之间的第一驱动关系。同理,可以预先确定被驱动模型中的各顶点具体被代理模型中的哪一个顶点驱动控制,而对于被驱动模型中的各顶点,可以通过数学计算将其位置信息变换到代理模型的坐标系下,然后可以进一步通过简单地计算,构建该每个顶点与代理模型中相对应的顶点之间驱动矩阵,此时被驱动模型中的每个顶点与代理模型中的顶点之间的对应关系,以及对应的驱动矩阵即可视为被驱动模型中的各顶点。
具体的,当主驱动模型中的至少一个顶点位置变化时,此时可以先基于该至少一个顶点变化后的位置,确定主驱动模型中除该至少一个之外其他各顶点的位置,然后根据第一驱动关系知晓主驱动模型中的哪几个顶点驱动控制代理模型中的第一顶点,此时可以根据该几个顶点变化后的位置和以及对应的驱动矩阵,确定代理模型中受主驱动模型控制的第一顶点的位置,然后确定代理模型中除第一顶点之外的第二顶点的位置,并基于该第一顶点的位置、以及代理模型中第二顶点的位置,得到代理模型所包括的各顶点的位置。
具体的,由于主驱动模型通过代理模型间接驱动控制被驱动模型,当在主驱动模型的位置发生变化,确定出受主驱动模型控制的代理模型各顶点的位置后,可以基于第二驱动关系知晓被驱动模型中的各顶点具体被代理模型中哪个顶点驱动控制,此时可以根据代理模中各顶点变化后的位置和以及各顶点对应的驱动矩阵,得到被驱动模型各顶点的位置。
在一示例中,假设主驱动模型包括顶点A1~A6,代理模型包括顶点B1~B4,被驱动模型包括顶点C1~C4,预先配置了主驱动模型中的顶点A1驱动控制代理模型中的顶点B1,顶点A6驱动控制代理模型中的顶点B6,代理模型中的顶点B1~ B4依次分别驱动控制被驱动模型中的顶点C1~C4。进一步的,可以根据实际应用需求,通过简单地计算,构建顶点A1和顶点B1之间的驱动矩阵、顶点A6和顶点B4之间的驱动矩阵,得到主驱动模型的各顶点和代理模型的第一顶点之间的第一驱动关系;同理,可以构建代理模型的各顶点与被驱动模型的各顶点之间的驱动矩阵之间的驱动矩阵即第二驱动关系。进一步的,假设主驱动模型的顶点A1的位置发生变化时,此时可以基于顶点A1变化后的位置确定出主驱动模型的顶点A2~A6的位置,并且由于主驱动模型中的顶点A1驱动控制代理模型中的顶点B1、顶点A6驱动控制代理模型中的顶点B4,此时可以根据变化后的顶点A1和顶点A6的位置、以及顶点A1和顶点B1之间的驱动矩阵、顶点A6和顶点B4之间的驱动矩阵,确定出代理模型的顶点B1和顶点B4的位置,并确定出代理模型的顶点B2、顶点B3的位置,然后可以基于代理模型的各顶点(B1~B4)与被驱动模型的各顶点之间的驱动矩阵之间的驱动矩阵、以及代理模型的各顶点(B1~B4)的位置,确定被驱动模各顶点(C1~C4)的位置,进而得到受主驱动模型变化后的被驱动模型。
在本申请可选的实施例中,根据至少一个顶点变化后的位置,确定主驱动模型中除至少一个顶点之外其他各顶点的位置,包括:
获取主驱动模型中各顶点之间的第一位置关系;
根据第一位置关系、至少一个顶点变化后的位置,确定主驱动模型中除至少一个顶点之外其他各顶点的位置。
其中,位置关系指的是各顶点在模型中彼此之间的空间位置关系,此时当知晓一个顶点的位置时,即可以根据该空间位置关系确定出模型中其它顶点的位置;该空间位置关系包括了坐标位置关系以及顶点之间的角度关系。其中,确定模型中的各顶点之间的位置关系的具体实现方式可以根据实际需求预先配置,本申请实施例不限定。例如,在确定主驱动模型中顶点之间的位置关系时,可以将主驱动模型中的某个顶点作为基准原点建立空间坐标系,然后分别确定主驱动模型中除该基准原点之外的其它顶点在该空间坐标系中位置,通过每个顶点在该空间坐标系中位置作为主驱动模型中各顶点之间的位置关系。
可选的,在确定主驱动模型除至少一个顶点之外其他各顶点的位置时,可以获取主驱动模型中各顶点之间的位置关系,然后根据该位置关系、该至少一个顶点变化后的位置,分别确定主驱动模型中除该至少一个顶点之外其他各顶点的位置。
在本申请可选的实施例中,确定代理模型中第二顶点的位置,包括:
获取代理模型中各顶点之间的第二位置关系;
根据代理模型的第一顶点的位置以及第二位置关系,确定代理模型中第二顶点的位置。
其中,关于位置信息的说明以及具体实现方式可以参见前文描述,在此就不再赘述。
可选的,由于主驱动模型可以通过代理模型驱动控制代理模型中的第一顶点,此时基于主驱动模型中变化后的各个顶点的位置和第一驱动关系,即可以确定出代理模型中第一顶点的位置,而对于代理模型中除该第一顶点之外的第二顶点的位置,则可以获取代理模型中各顶点之间的位置关系,然后根据该第一顶点的位置以及第二位置关系,确定代理模型中第二顶点的位置。
在本申请可选的实施例中,被驱动模型包括刚性物体的动画模型。
可选的,本申请实施例中的被驱动模型可以包括刚性物体的动画模型。也就是说,当被驱动模型为刚性物体的动画模型时,可以预先配置代理模型,然后主驱动模型通过代理模型间接驱动控制该刚性物体的动画模型。
可以理解的是,被驱动模型还可以包括非刚性物体的动画模型,此时可以配置不同的代理模型,比如可以配置代理模型的顶点数量多一些,并且代理模型中被主驱动模型驱动控制的顶点数量多一些,以保证代理模型可以更好的基于主驱动模型变化而变化。
在本申请可选的实施例中,若被驱动模型为非刚性的动画模型,在主驱动模型的位置发生变化时,该方法还包括:
获取主驱动模型和被驱动模型之间的第三驱动关系;
根据位置变化后的主驱动模型的位置和第三驱动关系,确定被驱动模型的位置。
可选的,在本申请实施例中还以预先配置第三驱动关系,基于第三驱动关系可以知晓主驱动模型中哪些顶点直接驱动控制被驱动模型中的哪些顶点。其中,在被驱动模型为非刚性的动画模型时,此时在主驱动模型被变化时,希望被驱动模型可以基于主驱动模型的变化而变化,不再保持原有形态,此时可以获取预先配置的主驱动模型和被驱动模型之间的第三驱动关系,然后根据位置变化后的主驱动模型的位置和该第三驱动关系,确定被驱动模型的位置。
在本申请可选的实施例中,代理模型顶点的数量不大于被驱动模型的顶点数量。
在本申请实施例中,可以将代理模型的顶点数量小于主驱动模型,此时虽然额外增加了一层代理模型建立主驱动模型和被驱动模型的驱动过程,但是由于代理模型的顶点数量非常小,此时即可以保证了被驱动模型在主驱动模型变化时保持了原有形态,又不会额外增加太多的计算量。
可选的,在本申请实施例中可以基于现有的Wrap动画变形器添加代理模型,并通过改变现有Wrap动画变形器的使用流程,得到新的Wrap动画变形器,并可以将该新Wrap动画变形器以插件的形式安装在Maya软件和UnrealEngine4游戏引擎中供开发人员使用、也可以通过引擎的自动打包功能将新Wrap动画变形器打包发送,方便开发人员使用。
为了更好地理解本申请实施例所提供的方法,下面结合具体的应用场景对该方法进行详细描述。在本实例中,主驱动模型与被驱动模型指的是游戏中的动画角色模型,可以理解的是,本申请实施例所提供的方法可应用的应用场景不仅仅局限于游戏中的应用场景,还可以是其他任何有动画模型涉及的应用场景,如动画视频,此时可以基于本申请实施例所提供的方法驱动控制动画视频中的动画角色模型。其中,本申请实施例所提供的方法可以在PC(personal computer,个人计算机)的软硬件环境下运行,而在经过虚幻游戏引擎打包处理后可得到可运行的软件包。
具体的,将可以添加代理模型的Wrap动画变形器(即前文中新的Wrap动画变形器)以插件的形式在Maya软件和UnrealEngine4游戏引擎中进行使用。例如,将新的Wrap动画变形器以插件的形式插入到UnrealEngine4或Maya软件的动画/渲染管线中。美术人员可以将一个动画角色的表面模型添加至该新的Wrap动画变形器,并以此作为主驱动模型,并确定与该主驱动模型对应的被驱动模型。进一步,美术人员可以基于指定的主驱动模型和被驱动模型的具体形态制作一个代理模型(即Proxy模型),并将代理模型在新的Wrap动画变形器中与主驱动模型和被驱动模型进行关联。
例如,如图7所示,可以在新的Wrap动画变形器的UI(User Interface,用户界面)界面中“指定主驱动模型名称”的选项中添加主动驱动模型的名称、在“指定被驱动名称”的选项中添加被动驱动模型的名称、以及在“指定Proxy模型名称”的选项中添加制作的代理模型的名称,然后点击“更新驱动关系”按钮,即可将代理模型与主驱动模型和被驱动模型进行关联,然后在该Wrap动画变形器中按照常规Wrap动画变形器的工作流程实现主驱动模型通过代理模型驱动控制被驱动模型。可选的,当用户点击“关闭”按钮时,表示了美术人员想要结束设置驱动关系,此时可以停止将代理模型与主驱动模型和被驱动模型进行关联。可选的,美术人员还可以基于“高级选项”中的选项列表(选项1~选择4)对该驱动关系进行进一步的设定。
进一步的,下面对基于新的Wrap动画变形器(下文简称Wrap动画变形器)实现主驱动模型通过代理模型驱动控制被驱动模型的具体实现方式进行说明。
如图8所示,本申请实施例提供了一种基于Wrap动画变形器实现主驱动模型通过代理模型驱动控制被驱动模型的原理图,从该图中可知,主驱动模型(即图中的主驱动模型动画)基于Wrap动画变形器驱动控制代理模型(即图中的Proxy模型动画)、Proxy模型动画基于Wrap动画变形器驱动控制被驱动模型(即图中的被驱动模型动画)。可见,Proxy模型建立了主驱动模型和被驱动模型之间的关联,同时又用于保持被驱动模型形态上的独立性。
具体的,假设主驱动模型、代理模型(图中的Proxy模型)和被驱动模型如图9所示,主驱动模型中的顶点A1和顶点A2分别驱动控制代理模型中的顶点B1和顶点B6(图中通过箭头指代说明),代理模型中的顶点B1~B6分别依次驱动被驱动模型中的顶点C1~C6(图中通过箭头指代说明),其中,图中将顶点C1和顶点B1、以及顶点C6和顶点B6重叠显示。此外,还预先配置了顶点A1和B1之间的驱动矩阵、顶点A2和B6之间的驱动矩阵、顶点C1和B1之间的驱动矩阵、顶点C2和B2之间的驱动矩阵、顶点C3和B3之间的驱动矩阵、顶点C4和B4之间的驱动矩阵、顶点C5和B5之间的驱动矩阵以及顶点C6和B6之间的驱动矩阵。
进一步的,如图10所示中,当主驱动模型(图10中的实线1)的位置发生时,基于现有技术中的方式驱动控制被驱动模型时,被驱动模型将变为图10中虚线1所示,即无法保持原有形态。而在本申请实施例中,可以基于主驱动模型中的顶点A1和顶点A2改变后的位置、以及顶点A1和B1之间的驱动矩阵、顶点A2和B6之间的驱动矩阵,得到代理模型(图10中的虚线2)中的顶点B1和顶点B6变化后的位置,然后可以获取代理模型中各顶点之间的位置关系,然后基于顶点B1和顶点B6变化后的位置、以及该位置关系,确定代理模型中顶点B2~B5的位置,具体可以如图10中的虚线2所示。
进一步的,可以基于代理模型中顶点B1~B6的位置、以及顶点C1和B1之间的驱动矩阵、顶点C2和B2之间的驱动矩阵、顶点C3和B3之间的驱动矩阵、顶点C4和B4之间的驱动矩阵、顶点C5和B5之间的驱动矩阵以及顶点C6和B6之间的驱动矩阵,依次确定被驱动模型中顶点C1~C6的位置,得到被主驱动模型驱动控制后的主驱动模型,具体图10中的实线2所示。
通过图9、图10可知,Proxy模型由于结构非常简单,其被主驱动模型所控制的顶点的数量也非常少,所以当主驱动模型发送较大变化时,它的表面仅是主要发生了旋转和线性地拉伸。这样基于Proxy模型驱动控制被驱动模型时,被驱动模型的顶点之间则主要基于Proxy模型的线性形变,Proxy模型仅是主要发生了旋转和线性地拉伸,因此被驱动模型的顶点之也仅会发生旋转和线性地拉伸,进而被驱动模型可以保持原有的形态。也就是说,本申请实施例中通过顶点数量非常有限的Proxy模型,使得被驱动模型的顶点不再是各自独立的运动,而是彼此之间有线性地关联。这样被驱动模型的动画变形即能和主驱动模型一样发生旋转、又能适当地产生线性拉伸或压缩,适配主驱动模型,同时又保持了自身的形态不发生扭曲。
本申请实施例提供了一种动画模型处理装置,如图11所示,该动画模型处理装置60可以包括:模型获取模块601、位置确定模块602以及控制模块603,其中,
模型获取模块601,用于在主驱动模型的位置发生变化时,获取主驱动模型的关联模型,关联模型包括代理模型和被驱动模型;
位置确定模块602,用于根据主驱动模型位置变化后的各顶点的位置,确定代理模型的各顶点的位置,代理模型的各顶点包括第一顶点和第二顶点,其中,第一顶点为被主驱动模型驱动的顶点;
控制模块603,用于根据代理模型的各顶点的位置,确定被驱动模型各顶点的位置,以根据被驱动模型各顶点的位置控制被驱动模型的变化。
可选的,主驱动模型的位置发生变化包括驱动模型的至少一个顶点的位置发生变化,该装置还包括驱动关系获取模块,用于:
在主驱动模型的位置发生变化时,获取主驱动模型对应的驱动关系,驱动关系包括驱动模型的各顶点和代理模型的第一顶点之间的第一驱动关系,以及代理模型的各顶点和被驱动模型的各顶点之间的第二驱动关系;
位置确定模块在根据主驱动模型位置变化后的各顶点的位置,确定代理模型的各顶点的位置时,具体用于:
根据至少一个顶点变化后的位置,确定主驱动模型中除至少一个顶点之外其他各顶点的位置;
根据主驱动模型变化后的各顶点的位置和第一驱动关系,确定代理模型的第一顶点的位置;
确定代理模型中第二顶点的位置;
位置确定模块在根据代理模型的各顶点的位置,确定被驱动模型各顶点的位置时,具体用于:
根据代理模型的各顶点的位置和第二驱动关系,确定被驱动模型各顶点的位置。
可选的,位置确定模块在根据至少一个顶点变化后的位置,确定主驱动模型中除至少一个顶点之外其他各顶点的位置时,具体用于:
获取主驱动模型中各顶点之间的第一位置关系;
根据第一位置关系、至少一个顶点变化后的位置,确定主驱动模型中除至少一个顶点之外其他各顶点的位置。
可选的,位置确定模块在确定代理模型中第二顶点的位置时,具体用于:
获取代理模型中各顶点之间的第二位置关系;
根据代理模型的第一顶点的位置以及第二位置关系,确定代理模型中第二顶点的位置。
可选的,被驱动模型包括刚性物体的动画模型。
可选的,若被驱动模型为非刚性的动画模型,在主驱动模型的位置发生变化时,驱动关系获取模块还用于:
获取主驱动模型和被驱动模型之间的第三驱动关系;
根据主驱动模型位置变化后的各顶点的位置和第三驱动关系,确定被驱动模型各顶点的位置,以根据被驱动模型各顶点的位置控制被驱动模型的变化。
可选的,代理模型顶点的数量不大于被驱动模型的顶点数量。
本申请实施例的动画模型处理装置可执行本申请实施例提供的一种动画模型处理方法,其实现原理相类似,此处不再赘述。
本申请实施例提供了一种电子设备,如图12所示,图12所示的电子设备2000包括:处理器2001和存储器2003。其中,处理器2001和存储器2003相连,如通过总线2002相连。可选地,电子设备2000还可以包括收发器2004。需要说明的是,实际应用中收发器2004不限于一个,该电子设备2000的结构并不构成对本申请实施例的限定。
其中,处理器2001应用于本申请实施例中,用于实现图11所示的各模块的功能。
处理器2001可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器2001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线2002可包括一通路,在上述组件之间传送信息。总线2002可以是PCI总线或EISA总线等。总线2002可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器2003可以是ROM或可存储静态信息和计算机程序的其他类型的静态存储设备,RAM或者可存储信息和计算机程序的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储或以数据结构形式的期望的计算机程序并能够由计算机存取的任何其他介质,但不限于此。
存储器2003用于存储执行本申请方案的应用程序的计算机程序,并由处理器2001来控制执行。处理器2001用于执行存储器2003中存储的应用程序的计算机程序,以实现图11所示实施例提供的动画模型处理装置的动作。
本申请实施例提供了一种电子设备,包括处理器以及存储器:存储器被配置用于存储计算机程序,计算机程序在由处理器执行时,使得处理器上述实施例中的任一项方法。
本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质用于存储计算机程序,当计算机程序在计算机上运行时,使得计算机可以执行上述实施例中的任一项方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。
本申请中的一种计算机可读存储介质所涉及的名词及实现原理具体可以参照本申请实施例中的一种动画模型处理方法,在此不再赘述。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (11)

1.一种动画模型处理方法,其特征在于,包括:
在主驱动模型的位置发生变化时,获取所述主驱动模型的关联模型,所述关联模型包括代理模型和被驱动模型,所述主驱动模型的位置发生变化包括所述主驱动模型的至少一个顶点的位置发生变化,所述代理模型的各顶点包括第一顶点和第二顶点,所述第一顶点为被所述主驱动模型驱动的顶点;
获取所述主驱动模型对应的驱动关系,所述驱动关系包括主驱动模型的各顶点和所述代理模型的第一顶点之间的第一驱动关系;
根据所述主驱动模型位置变化后的各顶点的位置,确定所述代理模型的各顶点的位置,包括:根据所述至少一个顶点变化后的位置,确定所述主驱动模型中除所述至少一个顶点之外其他各顶点的位置;根据所述主驱动模型变化后的各顶点的位置和所述第一驱动关系,确定所述代理模型的所述第一顶点的位置;获取所述代理模型中各顶点之间的第二位置关系;根据所述代理模型的第一顶点的位置以及所述第二位置关系,确定所述代理模型中所述第二顶点的位置;
根据所述代理模型的各顶点的位置,确定所述被驱动模型各顶点的位置以根据所述被驱动模型各顶点的位置控制所述被驱动模型的变化。
2.根据权利要求1所述的方法,其特征在于,所述驱动关系包括所述代理模型的各顶点和所述被驱动模型的各顶点之间的第二驱动关系;
所述根据所述代理模型的各顶点的位置,确定所述被驱动模型各顶点的位置,包括:
根据所述代理模型的各顶点的位置和所述第二驱动关系,确定所述被驱动模型各顶点的位置。
3.根据权利要求2所述的方法,其特征在于,所述根据所述至少一个顶点变化后的位置,确定所述主驱动模型中除所述至少一个顶点之外其他各顶点的位置,包括:
获取所述主驱动模型中各顶点之间的第一位置关系;
根据所述第一位置关系、所述至少一个顶点变化后的位置,确定所述主驱动模型中除所述至少一个顶点之外其他各顶点的位置。
4.根据权利要求1所述的方法,其特征在于,所述被驱动模型包括刚性物体的动画模型。
5.根据权利要求4所述的方法,其特征在于,若所述被驱动模型为非刚性的动画模型,所述在主驱动模型的位置发生变化时,所述方法还包括:
获取所述主驱动模型和所述被驱动模型之间的第三驱动关系;
根据所述主驱动模型位置变化后的各顶点的位置和所述第三驱动关系,确定所述被驱动模型各顶点的位置,以根据所述被驱动模型各顶点的位置控制所述被驱动模型的变化。
6.根据权利要求1所述的方法,其特征在于,所述代理模型顶点的数量不大于所述被驱动模型的顶点数量。
7.一种动画模型处理装置,其特征在于,包括:
模型获取模块,用于在主驱动模型的位置发生变化时,获取所述主驱动模型的关联模型,所述关联模型包括代理模型和被驱动模型,所述主驱动模型的位置发生变化包括所述主驱动模型的至少一个顶点的位置发生变化;
驱动关系获取模块,用于在主驱动模型的位置发生变化时,获取所述主驱动模型对应的驱动关系,所述驱动关系包括主驱动模型的各顶点和所述代理模型的第一顶点之间的第一驱动关系;
位置确定模块,用于根据所述主驱动模型位置变化后的各顶点的位置,确定所述代理模型的各顶点的位置,所述代理模型的各顶点包括第一顶点和第二顶点,其中,所述第一顶点为被所述主驱动模型驱动的顶点;
控制模块,用于根据所述代理模型的各顶点的位置,确定所述被驱动模型各顶点的位置,以根据所述被驱动模型各顶点的位置控制所述被驱动模型的变化;
其中,所述位置确定模块在确定所述代理模型的各顶点的位置时用于:
根据所述至少一个顶点变化后的位置,确定所述主驱动模型中除所述至少一个顶点之外其他各顶点的位置;根据所述主驱动模型变化后的各顶点的位置和所述第一驱动关系,确定所述代理模型的所述第一顶点的位置;获取所述代理模型中各顶点之间的第二位置关系;根据所述代理模型的第一顶点的位置以及所述第二位置关系,确定所述代理模型中所述第二顶点的位置。
8.根据权利要求7所述的装置,其特征在于,所述驱动关系包括所述代理模型的各顶点和所述被驱动模型的各顶点之间的第二驱动关系;
所述位置确定模块在根据所述代理模型的各顶点的位置,确定所述被驱动模型各顶点的位置时,具体用于:
根据所述代理模型的各顶点的位置和所述第二驱动关系,确定所述被驱动模型各顶点的位置。
9.根据权利要求7所述的装置,其特征在于,所述被驱动模型包括刚性物体的动画模型。
10.一种电子设备,其特征在于,包括处理器以及存储器:
所述存储器被配置用于存储计算机程序,所述计算机程序在由所述处理器执行时,使得所述处理器执行权利要求1-6任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序在计算机上运行时,使得计算机执行权利要求1-6中任一项所述的方法。
CN202010820850.1A 2020-08-14 2020-08-14 动画模型处理方法、装置、电子设备及可读存储介质 Active CN111951360B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010820850.1A CN111951360B (zh) 2020-08-14 2020-08-14 动画模型处理方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010820850.1A CN111951360B (zh) 2020-08-14 2020-08-14 动画模型处理方法、装置、电子设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN111951360A CN111951360A (zh) 2020-11-17
CN111951360B true CN111951360B (zh) 2023-06-23

Family

ID=73343777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010820850.1A Active CN111951360B (zh) 2020-08-14 2020-08-14 动画模型处理方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN111951360B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112435318B (zh) * 2020-11-30 2022-11-18 上海米哈游天命科技有限公司 一种游戏中的防穿模方法、装置、电子设备及存储介质
CN116168131B (zh) * 2022-12-09 2023-11-21 北京百度网讯科技有限公司 布料的渲染处理方法、装置、电子设备及存储介质

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1611001A (zh) * 2000-03-23 2005-04-27 伊利普特克谐振调节器股份公司 振动马达及其制造和使用方法
WO2009019899A1 (ja) * 2007-08-08 2009-02-12 Konami Digital Entertainment Co., Ltd. ゲーム装置、ゲーム装置の制御方法、プログラム及び情報記憶媒体
CN101719284A (zh) * 2009-12-25 2010-06-02 北京航空航天大学 一种基于层次模型的虚拟人皮肤物理变形方法
CN102708582A (zh) * 2012-05-08 2012-10-03 电子科技大学 一种面向异构拓扑的角色运动重定向方法
CN103679783A (zh) * 2013-10-18 2014-03-26 中国科学院自动化研究所 基于几何变形的三维动画角色模型皮肤变形方法
WO2018024089A1 (zh) * 2016-08-01 2018-02-08 北京小小牛创意科技有限公司 制作动画的方法和装置
CN107875633A (zh) * 2016-09-30 2018-04-06 电子技术公司 改善模拟中的模型的运动动画的计算机实现方法及系统
CN108961369A (zh) * 2018-07-11 2018-12-07 厦门幻世网络科技有限公司 生成3d动画的方法和装置
CN110490958A (zh) * 2019-08-22 2019-11-22 腾讯科技(深圳)有限公司 动画绘制方法、装置、终端及存储介质
CN110490959A (zh) * 2019-08-14 2019-11-22 腾讯科技(深圳)有限公司 三维图像处理方法及装置、虚拟形象生成方法以及电子设备
CN110634177A (zh) * 2018-06-21 2019-12-31 华为技术有限公司 一种物体建模运动方法、装置与设备
CN111260764A (zh) * 2020-02-04 2020-06-09 腾讯科技(深圳)有限公司 一种制作动画的方法、装置及存储介质
CN111383309A (zh) * 2020-03-06 2020-07-07 腾讯科技(深圳)有限公司 一种骨骼动画驱动方法、装置及存储介质
CN111417988A (zh) * 2017-07-28 2020-07-14 北奥拜勃工作室有限公司 用于实时复杂角色动画和交互性的系统和方法
CN111445561A (zh) * 2020-03-25 2020-07-24 北京百度网讯科技有限公司 虚拟对象的处理方法、装置、设备及存储介质

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1611001A (zh) * 2000-03-23 2005-04-27 伊利普特克谐振调节器股份公司 振动马达及其制造和使用方法
WO2009019899A1 (ja) * 2007-08-08 2009-02-12 Konami Digital Entertainment Co., Ltd. ゲーム装置、ゲーム装置の制御方法、プログラム及び情報記憶媒体
CN101719284A (zh) * 2009-12-25 2010-06-02 北京航空航天大学 一种基于层次模型的虚拟人皮肤物理变形方法
CN102708582A (zh) * 2012-05-08 2012-10-03 电子科技大学 一种面向异构拓扑的角色运动重定向方法
CN103679783A (zh) * 2013-10-18 2014-03-26 中国科学院自动化研究所 基于几何变形的三维动画角色模型皮肤变形方法
WO2018024089A1 (zh) * 2016-08-01 2018-02-08 北京小小牛创意科技有限公司 制作动画的方法和装置
CN107875633A (zh) * 2016-09-30 2018-04-06 电子技术公司 改善模拟中的模型的运动动画的计算机实现方法及系统
CN111417988A (zh) * 2017-07-28 2020-07-14 北奥拜勃工作室有限公司 用于实时复杂角色动画和交互性的系统和方法
CN110634177A (zh) * 2018-06-21 2019-12-31 华为技术有限公司 一种物体建模运动方法、装置与设备
CN108961369A (zh) * 2018-07-11 2018-12-07 厦门幻世网络科技有限公司 生成3d动画的方法和装置
CN110490959A (zh) * 2019-08-14 2019-11-22 腾讯科技(深圳)有限公司 三维图像处理方法及装置、虚拟形象生成方法以及电子设备
CN110490958A (zh) * 2019-08-22 2019-11-22 腾讯科技(深圳)有限公司 动画绘制方法、装置、终端及存储介质
CN111260764A (zh) * 2020-02-04 2020-06-09 腾讯科技(深圳)有限公司 一种制作动画的方法、装置及存储介质
CN111383309A (zh) * 2020-03-06 2020-07-07 腾讯科技(深圳)有限公司 一种骨骼动画驱动方法、装置及存储介质
CN111445561A (zh) * 2020-03-25 2020-07-24 北京百度网讯科技有限公司 虚拟对象的处理方法、装置、设备及存储介质

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
一种人体运动骨骼提取和动画自动生成方法;吴伟和;郝爱民;赵永涛;万巧慧;李帅;;计算机研究与发展(第07期);全文 *
基于Kinect的实时动画角色驱动方法;胡夏;杨智为;刘晓平;;合肥工业大学学报(自然科学版)(第06期);全文 *
基于物理的实时人体动画;郁佳荣;石教英;周永霞;;浙江大学学报(工学版)(第12期);全文 *
计算机动画中人体建模与皮肤变形技术的研究现状与展望;吴小𠇔;马利庄;顾宝军;;中国图象图形学报(第04期);全文 *
骨架驱动的MLS卡通角色变形;蒋莉;林瑶磊;梁荣华;缪永伟;;计算机辅助设计与图形学学报(第05期);全文 *

Also Published As

Publication number Publication date
CN111951360A (zh) 2020-11-17

Similar Documents

Publication Publication Date Title
EP3714359B1 (en) Animating three-dimensional models using preset combinations of animation features
CN101473351B (zh) 肌肉与骨骼形状蒙皮
JP2020510262A (ja) 表情アニメーション生成方法及び装置、記憶媒体ならびに電子装置
CN111951360B (zh) 动画模型处理方法、装置、电子设备及可读存储介质
KR20170012384A (ko) 머리 회전을 갖는 아바타 얼굴 표정 애니메이션
US20180276870A1 (en) System and method for mass-animating characters in animated sequences
US11238667B2 (en) Modification of animated characters
KR20080090671A (ko) 3d 객체 모델에 텍스쳐를 매핑하는 방법 및 장치
CN111803945A (zh) 界面渲染方法、装置、电子设备及存储介质
US7652670B2 (en) Polynomial encoding of vertex data for use in computer animation of cloth and other materials
CN110136232B (zh) 骨骼蒙皮动画的处理方法、装置、电子设备及存储介质
CN108109191A (zh) 渲染方法及系统
US11645805B2 (en) Animated faces using texture manipulation
CN114299200A (zh) 布料动画处理方法及装置、电子设备、存储介质
CN110570357A (zh) 基于ue4引擎的镜像实现方法、装置、设备及存储介质
US20230120883A1 (en) Inferred skeletal structure for practical 3d assets
KR20230156138A (ko) 밑에 있는 신체에 맞는 레이어링된 의류 및/또는 의류 레이어
CN113553173B (zh) 基于mpi的ue4并行处理方法、装置、设备和介质
CN118160008A (zh) 实用3d资产的推断的骨骼结构
CN118505873A (zh) 3d渲染方法、装置、计算机设备及存储介质
Toledo Díaz et al. Level of detail for complex urban scenes with varied animated crowds, using XML
WO2014108214A1 (en) Client-server system for a web-based furniture shop
CN117274551A (zh) 三维综合集成展示系统、方法、计算机设备
Guo 3D graphics platforms and tools for mobile applications
Kassing Development of a 3D Graphics Engine Computer Systems Lab, 2006-2007

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