依赖图中的时间依赖性的制作方法

文档序号:8207777阅读:1045来源:国知局
依赖图中的时间依赖性的制作方法
【专利说明】依赖图中的时间依赖性
[0001]相关申请的交叉引用
[0002]本申请请求2012年8月3日向美国专利商标局提交的美国临时专利申请N0.61/679665的优先权,其整体内容在此通过引用并入本文。
技术领域
[0003]本发明总体涉及计算机产生的动画,更具体地涉及对具有一个或多个时间依赖变量的依赖图进行评估。
【背景技术】
[0004]媒体制作通常使用依赖图来对动画中的场景进行渲染、动画化、或者描绘。这些依赖图可由互连节点形成,每个互连节点可以是单独计算单元,该单独计算单元经由一个或多个输入属性来获取数据,执行对数据的一些计算,并且产生一个或多个输出属性。连接图形中的节点的边缘可表示从一个节点至下一个节点的数据流动,其中每个节点对其接收的数据执行一些计算以产生其输出。节点可具有任意数量的输入和任意数量的输出以及其它属性。通过改变馈入节点的输入属性,动画师可控制对象或场景的动作、位置和其它视觉效果O
[0005]随着媒体制作创建更真实的动画,用来支持这些动画的依赖图中的节点的复杂性和数量也增大。例如,随着角色被改进为包括更逼真的视觉元素和运动,描述角色的图形可能变得越来越大而且更复杂。普遍的是将具有几千个节点的依赖图用于动画化动画片的单个帧。这样,处理这些依赖图所需的时间和计算资源通常非常大。
[0006]这些处理延迟在制作期间可以相当昂贵并不确定。例如,用于一组镜头的依赖图可包括表示将在一组镜头中显示的角色和其它人或物的几千个节点。动画师可将输入配置给依赖图内的各种节点以使得角色按照期望的方式运动。一旦输入被配置,图形可被评估以针对确定数量的帧来确定依赖图的输出。根据被计算的帧的数量,在能够获得依赖图的输出之前,可要求动画师等待相当长的时间。动画师可随后查看得到的图像以确定提供给依赖图的输入是否产生了期望结果。如果动画师不满意结果,动画师可修改提供给依赖图的输入,而且图形可被再次评估。该迭代过程可执行数百次或者更多次直到得到期望输出。
[0007]在图形包括在不同时间取决于其它节点的输出的节点时,处理延迟可更有问题。例如,配置成确定轮子应该旋转多少的节点可接收来自前一帧的轮子的水平位置以及来自当前帧的水平位置作为输入。可随后根据轮子行进的线性距离和半径来执行计算以确定轮子的旋转。因此,这些时间依赖的节点可取决于图形内的节点的输出以及来自不同帧的图形内的节点的输出。但是,传统动画系统不能追踪这些时间依赖性。于是,如果动画师改变依赖图内的任意节点的输入值,必须从一组镜头的第一帧至期望帧评估图形。例如,如果动画师仅仅改变涵盖帧0-100的一组镜头的帧70处的输入,以评估第71帧,可能要求针对帧0-71评估图形。

【发明内容】

[0008]描述了用于评估具有一个或多个时间依赖变量的依赖图的处理。一个示例处理可包括:通过处理器接收请求以评估针对动画的被请求帧的依赖图;根据时间依赖性列表来识别用于评估针对被请求帧的依赖图的帧的时间依赖变量的污染值,其中时间依赖性列表包括依赖图的之前的评估所确定的时间依赖变量的值的列表;评估所识别出的污染值;根据所识别出的污染值的评估来更新时间依赖性列表的值的列表;以及至少部分地根据时间依赖性列表的值的更新列表来评估被请求帧处的依赖图的至少一部分。
[0009]在一些示例中,时间依赖性列表可包括针对值的列表中的每个值的时间污染标记。在其它示例中,识别污染值可包括剖析时间依赖性列表以识别包括一组时间污染标记的值的列表中的值。在另一些示例中,更新时间依赖性列表的值的列表可包括:在时间依赖性列表中存储识别出的污染值的评估结果;以及针对识别出的污染值来重置时间污染标记。
[0010]在一些示例中,评估识别出的污染值可不包括评估用于评估针对被请求帧的依赖图的帧的非污染值。
[0011]在一些示例中,时间依赖变量可被识别为是依赖图中的一个或多个节点的时间依赖变量。
[0012]在一些示例中,所述方法可进一步包括,在接收请求以评估被请求帧处的依赖图之前:识别时间依赖变量;产生时间依赖性列表;评估针对一个或多个帧的依赖图;以及在时间依赖性列表中存储评估针对一个或多个帧的依赖图而得到的时间依赖变量的值。
[0013]还描述了用于评估具有一个或多个时间依赖变量的依赖图的系统和计算机可读存储介质。
【附图说明】
[0014]通过结合附图参考后续说明能够最好地理解本申请,其中相同数字可引用相同部分。
[0015]图1图示出根据各种示例的可利用用于评估具有时间依赖性的依赖图的处理产生的示例性渲染图像。
[0016]图2图示出根据各种示例的具有时间依赖性的示例性依赖图。
[0017]图3图不出根据各种不例的用于评估具有时间依赖性的依赖图的不例性处理。
[0018]图4图示出根据各种示例的示例性时间依赖性列表。
[0019]图5图不出根据各种不例的用于评估具有时间依赖性的依赖图的不例性处理。
[0020]图6图示出根据各种示例的示例性时间依赖性列表。
[0021]图7图示出根据各种示例的示例性时间依赖性列表。
[0022]图8图不出根据各种不例的用于评估具有时间依赖性的依赖图的不例性处理。
[0023]图9图示出示例性计算系统。
【具体实施方式】
[0024]提供下面的描述以使得本领域普通技术人员能够做出及实现各种实施例。具体装置、技术和应用的描述仅仅被提供作为示例。本领域普通技术人员很容易想到对此处描述的示例的各种修改,而且此处定义的总原理可适用于其它示例和应用,而不脱离本技术的精神和范围。因此,公开的技术并不限于此处描述和表示的示例,而是与权利要求一致的相应范围。
[0025]出于说明的目的,通过本公开文本,软件、软件模块、软件对象等可被描述为执行各种功能。但是本领域技术人员可以理解的是,软件不主动地执行任意功能,而是可以包括可在计算机处理器上执行的指令。这样,虽然软件在此可被描述为执行功能,但是应该理解的是,计算机处理器或其它计算装置通常可通过执行软件模块或对象提供的计算机指令来执行此处分配给软件模块或对象的这些功能。
[0026]下文描述了涉及评估具有一个或多个时间依赖变量的依赖图的系统和处理。时间依赖变量可包括变量,该变量可被用于评估时间依赖变量被评估处的帧之外的帧处的依赖图。一个示例处理可包括利用时间依赖性列表来追踪针对每个时间依赖变量的时间污染状态。该列表可被用于确定当评估特定帧的依赖图的请求被接收时哪个帧应该被重新评估,如果存在应该被重新评估的帧。这有利地减少了重新评估依赖图所需的时间量和计算资源。
[0027]图1示出了根据各种示例的可利用用于评估具有时间依赖性的依赖图的处理进行渲染的示例性计算机产生的图像。注意,图1示出了角色,其特征可能取决于角色的骨骼的当前位置以及来自之前的帧的角色的骨骼的位置。
[0028]如前所述,具有互连节点的依赖图(每个互连节点可以是单独计算单元)可被用于渲染、动画化或描述动画中的场景。例如,图2图示出示例性依赖图200,其可被用于产生计算机产生的动画场景,如图1所示的那样。依赖图200可包括对图形的输入202和204,其可例如是数据,该数据描述了角色动作动画对象的位置、场景背景、时间变化、或节点206和220将对其执行计算以产生输出属性的任意各种特征。图形200还可包括输出230,232,234和236,其可例如表示特定帧/时间下的场景的图像。因此,图形200的单次评估可被执行以产生动画的帧的图像、3D几何形状或其它表示形状。图形200可被多次评估,其中每次评估产生针对不同帧的输出230,232,234,236,从而产生计算机产生的动画。
[0029]如所示,依赖图200可包括通过边缘互连的多个节点(例如,节点206,208,210,212,214,216,218,220,222,224,226和228)。每个节点可表示将对节点的输入处接收的数据执行以在节点的输出产生数据的计算操作。边缘可以是定向的而且可指示节点之间的数据流的方向。例如,节点206可以是根据时间输入202确定车轮子的位置的
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1