三维水墨动画的制作方法

文档序号:6440072阅读:673来源:国知局
专利名称:三维水墨动画的制作方法
技术领域
本发明属于计算机动态图形图像技术领域,具体涉及一种三维水墨动画的制作方法。
背景技术
流体动画在三维游戏设计、三维电影制作中有着重要的应用,同时流体的真实感实时模拟一直是计算机动态图像技术领域中的一个研究热点和挑战性问题。现实世界中的流体现象,如水墨的扩散现象,无法用简单的模型来描述,只有借助精确的物理描述才能真实再现其外在的视觉现象。因此,研究真实、高效的水墨扩散的物理模型对制作三维水墨动画具有重要的意义。目前基于物理的流体模拟分为两类第一类是基于欧拉网格法的流体模拟。这类方法基本思想是利用固定的空间网格对纳维斯托克斯流体控制方程进行离散,然后通过计算各个固定网格点上的流体状态量的变化,对整个流场流动进行模拟。如lister和Mam使用欧拉网格法来模拟流体现象。第二类是基于拉格朗日颗粒法的流体模拟。这类方法的基本思想是将流体离散为一系列的流体微团(流体颗粒),通过跟踪这些流体颗粒在运动过程中的属性变化,从而完成对流体运动的模拟,使用流体颗粒代替固定网格的方法可以使纳维斯托克斯流体控制方程得到简化。如Mueller和Adams使用拉格朗日颗粒法来模拟流体现象。多种多样的水墨模拟方法基于上述两种方法发展而来,然而,为了追求水墨动画的真实性,这些方法通常引入了很多复杂的物理模型,并且做了大量的近似或假设,导致无法实时的动态显示水墨扩散的现象,从而无法将这种现象应用到三维水墨动画的制作及互动游戏体验当中。所以,通过真实、高效的物理模型来实时的动态显示真实的水墨扩散现象具有重要的意义。

发明内容
(一)要解决的技术问题本发明的目的是提供一种三维水墨动画的制作方法,使其呈现真实的水墨动态扩散效果。( 二)技术方案为了实现上述目的,本发明的制作三维水墨动画的方法包括下列步骤(1)多边形动画解析,以动画中的多边形曲面作为发射源发射流体;( 建立水墨动画的网格颗粒混合(Grid-Particle representation)形态,通过颗粒来表现溶液中的水墨颗粒,网格来表现溶解水墨颗粒的溶剂,利用网格流体的解算求得的速度场来驱动水墨颗粒的运动;(3) 实时为水墨动画添加动态交互;(4)水墨颗粒的渲染和动画图像的显示。(三)有益效果本发明针对水墨扩散现象提出了一种真实、高效的物理模型,克服了传统三维水
4墨动画制作过程中过多的近似或假设等不利于实时动态显示的缺点,能够以实时的、逼真的动画显示水墨扩散及动态的体感交互碰撞等效果,同时可以为不同的多边形动画添加水墨扩散效果,提高了三维水墨动画制作的效率及互动游戏体验的真实性。


图1是本发明的制作三维水墨动画的方法的基本流程图。图2是本发明的多边形动画解析流程图。图3是本发明的建立网格颗粒混合形态流程图。图4是本发明的添加水墨流体的体感交互流程图。图5是本发明的水墨颗粒渲染流程图。图6a和图6b是本发明真实的三维水墨扩散动画效果图。图7a和图7b是本发明应用于单水墨发射源的三维水墨动画效果图。图8a、图Sb、图8c和图8d是本发明应用于双水墨发射源的三维水墨动画效果图。图9a和图9b是本发明应用于水墨与固体碰撞的三维水墨动画效果图。图IOa和图IOb分别是应用运动模糊前后的三维水墨动画效果图。图Ila和图lib分别是应用拖拽力方程前后的三维水墨动画效果图。图12a和图12b是本发明应用于三维水墨鱼动画的三维水墨动画效果图。图13a、图13b、图13c和图13d是本发明应用于互动水墨体验的三维水墨动画效果图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。1、方法概述如图1所示,本发明的方法主要分为四个基本步骤(1)多边形动画解析,以动画中多边形曲面作为发射源发射流体;( 建立水墨动画的网格颗粒混合(Grid-Particle representation)形态,通过颗粒来表现溶液中的水墨颗粒,网格来表现溶解水墨颗粒的溶剂,利用网格流体的解算求得的速度场来驱动水墨颗粒图像的运动;(3)实时为水墨动画添加动态交互;(4)水墨颗粒的渲染和动画图像的显示。下面详细说明每个步骤。(1)多边形动画的解析是指在为不同的多边形动画添加动态的水墨扩散效果前,需要对动画中的虚拟物体进行分析,通常,多边形动画中包括角色、场景和道具三类虚拟物体,角色可以在场景中做各种表演,道具则是角色在表演时所用到的各种物体。如图2 所示,多边形动画的解析步骤包括首先确定动画场景的区域大小;接着,确定动画中多边形曲面的各个表面的中心点;最后,使动画中多边形曲面的表面发射网格流体及水墨颗粒。首先确定动画场景的区域大小。动画的场景指的是。为动画中角色的表演和动画情节的发展提供的固定大小的场所。通常,可能根据摄像机来确定动画场景的大小,例如摄像机的可视范围作为本发明的一种优选实施方式,由于网格流体的解算(将在下面描述) 的计算量是与网格的大小成正比,此外,场景以外的范围不需要对流体进行解算,为了尽可能的减小网格流体解算的计算量,以场景区域的大小作为流体网格的大小。
接着,为了实现从动画中多边形曲面的表面发射网格流体及水墨颗粒,需要确定动画中多边形曲面的各个表面的中心点,更确切的是确定动画中角色多边形曲面各个表面的中心点,并以此中心点作为发射源。通常,根据多边形表面各个点的坐标来确定对应的中心点,例如多边形表面各个点坐标的平均值。最后,使动画中多边形曲面的表面从其中心位置向流体网格内发射网格流体及水墨颗粒。所述的网格流体是指基于欧拉网格法,将空间用固定的网格离散,用网格体素表示对应位置的水墨溶剂微元的属性状态,水墨颗粒则是指基于拉格朗日颗粒法,将水墨溶质离散为一系列水墨颗粒,用水墨颗粒表示对应水墨溶质微元的属性状态,可以将两种方法结合使用,使得水墨溶剂微元属性状态和溶质微元属性状态在多边形曲面的各表面中心位置开始扩散,从而使动画中的多边形曲面的表面同时发射网格流体及水墨颗粒。(2)建立水墨动画的网格颗粒混合(Grid-Particle representation)形态,通过颗粒来表现溶液中的水墨颗粒,网格来表现溶解水墨颗粒的溶剂,利用网格流体的解算求得的速度场来驱动水墨颗粒的运动。如图3所示,首先进行网格流体的解算,接着将网络流体速度场传递给水墨颗粒, 最后进行水墨颗粒的解算。首先需要对网格流体进行解算,包括将网格流体的不可压缩纳维斯托克斯方程ancompressible Navier-Stokes Equation)、网格流体的前后误差补偿校正方程(Back and Forth Error Compensation and Correction)、网格、流体的润旋限制方程(Vorticity Confinement Equation)组合,利用图形处理器(GPU)进行优化求解。网格流体的不可压缩纳维斯托克斯控制方程如下所示质量方程V.w = 0动量方程I dt + (U ; = vW - Nρ I ρ + f这里ρ为密度,ρ为压强,f为体积力,U为速度,ν为运动粘性系数。这里我们采用半拉格朗日方法对该控制方程进行求解,具体步骤为1) ^^^Muij^ixJ + At) = Ui,j,k{x-Uij,k ΟΜΡ + Δ )的求解,其中;;为流体网格的速度, = (/办,为流体网格的位置;2)、扩散项+ =工的求解,其中的I为单位矩阵;3)、夕卜力项Mi丄+ Δ ) = Μο.Α( ) + 《Δ 的求解,其中g为重力加速度;4)、用雅克比迭代的方法求解泊松方程= V·二#,并利用Helmholtz-Hodge 分解定理求解无散度的流体速度。在现实的世界中,流体的运动包含了各种各样的涡旋效果,然而,由于上述的求解方法中引入了数值扩散,降低了涡旋的强度,因此,为了让流体的运动更加真实,我们引入了下面两个方程来修正所求得的流体的速度场前后误差补偿校正方程+;
权利要求
1.一种三维水墨动画的制作方法,包括步骤多边形动画解析,以动画中的多边形曲面作为发射源发射流体; 建立水墨动画的网格颗粒混合形态,通过颗粒来表现溶液中的水墨颗粒,网格来表现溶解水墨颗粒的溶剂,利用网格流体的解算求得的速度场来驱动水墨颗粒的运动; 实时为水墨动画添加动态交互; 水墨颗粒的渲染和动画图像的显示。
2.根据权利要求1所述的方法,其特征在于,多边形动画解析步骤包括 确定动画场景的区域大小;确定动画中多边形曲面的各个表面的中心点; 使动画中多边形曲面的表面发射网格流体及水墨颗粒。
3.根据权利要求2所述的方法,其特征在于,确定动画场景的区域大小的步骤为通过计算动画场景区域的大小来决定流体网格的大小。
4.根据权利要求2所述的方法,其特征在于,使动画中多边形曲面的表面发射网格流体及水墨颗粒的步骤为根据模型各个表面的中点位置向流体网格内同时发射网格流体及水墨颗粒。
5.根据权利要求1所述的方法,其特征在于建立水墨动画的网格颗粒混合形态的步骤包括网格流体的解算;将网格流体速度场传递给水墨颗粒; 水墨颗粒的解算。
6.按权利要求5所述的方法,其特征在于网格流体的解算步骤包括将不可压缩的纳维斯托克斯方程、涡旋限制方程及前后误差补偿校正方程组合,利用图形处理器进行并行优化求解。
7.根据权利要求5所述的方法,其特征在于将网格流体速度场传递给水墨颗粒的步骤包括根据实时检测的位置信息,将水墨颗粒分配给对应的网格体素,并将网格体素的速度,,new, w+1,immmj,nfadvectw,^p.u 赚一 =f^ectto,Atim^mmmmm,η 中,^ii h为网格流体的驱动力,At为流体解算的时间步长,P为对应网格体素的密度,J aavection半立$至妈区_力{乍白勺〒、流
8.根据权利要求5所述的方法,其特征在于水墨颗粒的解算步骤包括利用网格流体传递给水墨颗粒的速度信息,结合拖拽力方程=-pACd(v-v)v12 νVV求解水墨颗粒在运动过程中所受到的拖拽力,并利用方程^-h+ Δ 对水墨颗粒的速度进行修正,其中,fdMg为水墨颗粒所受到的拖拽力,A为拖拽力影响的横截面积,Cd为水墨颗粒对应的拖拽力系数,^;为多边形曲面对应表面中心点的移动速度。
9.根据权利要求1所述的方法,其特征在于,实时为水墨流体添加动态交互的步骤包括手部体感信息的采集;对手部动作的匹配;水墨流体与手部的碰撞检测及解算。
10.根据权利要求9所述的方法,其特征在于手部体感信息的采集步骤包括 实时的采集手部体感信息,同时结合OpenOT SDK定义各种手部动作,通过动作之间的匹配来触发与水墨流体的动态交互。
11.根据权利要求9所述的方法,其特征在于水墨流体与手部的碰撞检测及解算步骤包括实时的检测水墨流体与手部包围盒的碰撞,检测到碰撞后进一步检测水墨流体与手部边缘各点的碰撞,并利用方程;对水墨流体的速度进行修正,其中;;为水墨流体的速度,;;为碰撞点的法线方向,JLnd为手部碰撞点的速度。
12.根据权利要求1所述的方法,其特征在于,水墨颗粒的渲染和动画图像的显示步骤包括水墨颗粒的运动模糊求解; 水墨颗粒以颗粒精灵方式渲染;将渲染的水墨颗粒与渲染的多边形动画相互融合,显示最终的动画图像。
13.根据权利要求12所述的方法,其特征在于,水墨颗粒的运动模糊求解包括沿着每个水墨颗粒的运动轨迹,保存多个位置,并根据水墨颗粒的当前位置及前一位置进行插值,相应的水墨颗粒的颜色从当前位置到前一位置逐渐变淡。
14.根据权利要求12所述的方法,其特征在于,水墨颗粒以颗粒精灵方式渲染包括 利用颗粒精灵始终朝向视点特性,将对应位置的水墨颗粒以颗粒精灵的方式渲染,同时利用透明度融合技术,将渲染的颗粒精灵与渲染的多边形动画相互融合。
15.根据权利要求1-14中任一项所述的方法,其中颗粒数为500万,网格尺寸为 50X50X50。
全文摘要
本发明涉及一种三维水墨动画的制作方法,包括步骤(1)多边形动画解析,以动画中的多边形曲面作为发射源发射流体;(2)建立水墨动画的网格颗粒混合形态,通过颗粒来表现溶液中的水墨颗粒,网格来表现溶解水墨颗粒的溶剂,利用网格流体的解算求得的速度场来驱动水墨颗粒的运动;(3)实时为水墨动画添加动态交互;(4)水墨颗粒的渲染和动画图像的显示。本发明能够以实时的、逼真的动画显示水墨扩散及动态的体感交互碰撞等效果,同时可以为不同的多边形动画添加水墨扩散效果,提高三维水墨动画制作的效率及互动游戏体验的真实性。
文档编号G06T13/20GK102496177SQ20111039891
公开日2012年6月13日 申请日期2011年12月5日 优先权日2011年12月5日
发明者张之益, 张晓鹏, 徐士彪, 梅星, 董未名 申请人:中国科学院自动化研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1