- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[计算机硬件及网络]计算机动画
低层运动控制方法 ■参数关键帧技术 用于运动控制最早的方法 关键帧的概念来源于早期WaltDisney卡通画的制作 关键帧在早期即高级动画师设计卡片中的关键画面,然后由助理动画师设计成中间帧 随着图形学发展,中间帧可以用计算机自动生成 关键帧技术最初仅用来插值帧与帧之间卡通画的形状,后来发展成为可以用来插值影响运动的任何参数 关键帧插值运动控制技术的主要步骤: (1)确定需要控制的运动参数P (2)设置n个关键帧参数(ki,pi),i=0,1,2,.....,n-1 (3)采用样条插值技术对n个插值点进行插值 (4)对该插值样条进行离散采样,求得在某一帧时的参数值 ?关键帧插值法: 通过确定刚体运动的各个关键状态,并在每一关键状态下设置一个时间因子(比如,帧数),由系统插值生成每组中间帧并求出每帧的各种数据和状态; ?插值方法: 线性插值; ?非线性插值; ?线性插值: 直线轨迹,等间距生成中间帧; 物体以匀速运动; 简单,但运动速度不连续; ?非线性插值: 曲线轨迹,等间距生成中间帧; 物体仍以匀速运动; 运动轨迹光滑、速度连续、但缺乏速度变化; ?参数插值: 变速运动、等时间距内位置间距变化; 可以调整中间帧的出现的速度; 每个关键帧用参数来定义; ?匀速运动的参数插值: 假定需在时间段t1与t2之间插入n帧; 终始关键帧之间的时间段被分为n+1个子段,其时间间隔为: △t = (t2 –t1)/(n +1); 则任一插值帧的时刻为: tBj = t1 + j △t , j = 1, 2, … ,n 并确定出坐标位置和颜色值及其它物理参数; ?加速运动的参数插值: 为模拟正向加速度,使帧间的时间间隔增加,可使用下列三角加速函数来得到增加的间隔: 1 - cosθ, 0 θ π/2 , 对于插值帧来说,第j个插值帧的时刻可由下式得到: tBj = t1 + Δt [ 1 – cos (jπ/(2(n+1))) ] , j = 1,2,…,n ?减速运动的参数插值: 同理,为模拟减速,使用下列三角减速函数来得到减少的间隔: sinθ, 0 θ π/2 , 则第j个插值帧的时间位置被定义成: tBj = t1 + Δt sin( jπ/( 2(n +1))) , j = 1,2,…,n ?加减速混合过程的参数插值: 具体的运动过程常混合包含加速和减速,可以通过先增加插值时间间间隔后减少时间间隔的方法来模拟混合增减速度。所使用的时间变化函数是: (1 – cos θ)/2 , 0 θ π/2 , 得到第j个插值帧的时刻为: tBj = t1 + Δt {[1 – cos (jπ/(n+1))] /2} , j = 1, 2,…, n ?关键帧插值注意事项及缺陷: (1) 要注意插值参数的选择 例如: (2) 插值不考虑物体的物理属性及参数间的相互关系 ?样条驱动动画技术 所谓样条驱动动画,是指先设计好物体的运动轨迹,然后指定物体沿该轨迹运动 通常,物体的运动轨迹为三次样条插值,并且由用户交互给出 具体实现:假设物体的运动轨迹为一空间参数曲线Q(u),为了得到动画序列,必须对Q(u)进行等间隔采样,以求得物体在每一帧的位置. ?样条驱动动画流程: 1. 通过对给定参数点进行插值构建一条空间曲线p;p=P(u) 2.将曲线转换为弧长参化 u=U(s) 3. 给据给定的约束情况构建弧长与时间之间的关系; s=S(t) p=P(u(s(t))) 等参数采样与等弧长采样: 在给定的帧数内使物体匀速沿样条曲线Q(u)运动; 以参数u等间距采样? 等间距的参数不一定对应等间距的弧长; 对曲线以弧长为参数重新参数化; 便于对运动做细微的控制; 弧长参数化: 弧长函数s=A(u)是单调递增函数; 重新参数化: Q(u)→ Q(A-1(s)); 关键如何求得:u=A-1(s) 步骤1:利用二分查找法计算给定弧长sa所对应的参数值ua; 步骤2:利用积分公式计算弧长: 弧长计算的加速方法: 动画制作中要经常调整物体的轨迹曲线并实时观看调整后物体的运动效果; Watt提出一种基于向前差分的近似算法: 首先用向前差分计算曲线上的点Q(iΔu),建立一张关于u的累加弧长查找表; 速度曲线: 物体的运动可以由速度曲线来控制,速度曲线是弧长对时间的函数; 给定一条空间轨迹曲线和一条速度曲线, 为求得某一时刻物体在曲线上的
文档评论(0)