用Android属性动画实现和演示迪士尼动画基本原则

时间:2022-11-06 16:09:35

本文将介绍在Android平台上实现和演示迪士尼动画基本准则

项目开源,GitHub: https://github.com/vhow/animation

说明:

夸张手法

很多时候,动画需要模拟现实世界中物理的真实动画。但一味拘泥于现实,不免枯燥和乏味。因此,动画的撰写可以大胆夸张,夺人眼目。

用Android属性动画实现和演示迪士尼动画基本原则

跟随和覆盖行为

现实物体会受惯性作用,要模拟现实,就要考虑惯性。《猫和老鼠》等动画中常使用此技巧,以人物奔跑为例:

  • 开始奔跑
  • 逐渐加速
  • 奔跑中身体后倾
  • 逐步减速 (受惯性作用)
  • 停止,身体归正

用Android属性动画实现和演示迪士尼动画基本原则

预备动作

现实世界中,物体在行动前都有预期行为。例如:

  • 小猫在上跳前会下蹲
  • 狮子在发起攻击前会俯身蓄力

在编写动画代码时,也可以加入这些预备动作——预告接下来的行为,让用户产生预期。

用Android属性动画实现和演示迪士尼动画基本原则

挤压和拉伸

物体存在重量,也由不同材质组成。在运动过程中会发生挤压和拉伸。《猫和老鼠》中,猫撞墙时会发生扁平形变,就是应用了此准则。

用Android属性动画实现和演示迪士尼动画基本原则

突出显示

舞台上,领舞一般都被突出出来,向前走一步,或者穿着不同的衣服。动画亦是如此,需要突出强调关键元素以吸引用户的注意力。

用Android属性动画实现和演示迪士尼动画基本原则

接续动作与关键动作

开发动画之前,目标对象从初始位置过渡到终止位置,需要事前想好关键位置,也就是所谓的关键帧。这些关键帧定义好之后,动画就可以持续从一个关键帧过渡到另一个关键帧。

用Android属性动画实现和演示迪士尼动画基本原则

缓入缓出

真实世界中,物体从静止运动,是一个逐渐加速的过程。从运动静止是一个逐渐减速的过程。动画需要利用贝塞尔曲线,模拟这种状态切换过程。

用Android属性动画实现和演示迪士尼动画基本原则

弧线运动

有生命力的事物,例如老鹰,其移动轨迹往往是曲线,而非直线。动画也要模拟这种弧线运动轨迹,以切近现实。

用Android属性动画实现和演示迪士尼动画基本原则

用Android属性动画实现和演示迪士尼动画基本原则

时间节奏

时间和节奏是动画的灵魂。两个物体,哪怕初始状态、终止状态完全一样,只要节奏不同,其运动效果也会千差万别。

用Android属性动画实现和演示迪士尼动画基本原则

用Android属性动画实现和演示迪士尼动画基本原则的更多相关文章

  1. html迪士尼网页实现代码

    html body>     <div>         <!-- 导航设置 -->         <header>             <nav ...

  2. 用HTML编写迪士尼乐园页面

    <!DOCTYPE html><html xmlns="http://www.w3.org/1999/html"><head lang="e ...

  3. 杂项-公司-百科:华特&&num;183&semi;迪士尼-un

    ylbtech-杂项-公司-百科:华特·迪士尼 华特·迪士尼(Walt Disney,全名Walter Elias Disney,又译沃尔特·迪士尼,1901年12月5日—1966年12月15日),出 ...

  4. 迪士尼黑科技:爬墙机器人 VertiGo

    12 月 30 日,迪士尼研发出的一款爬墙机器人曝光了一段有趣的视频.从视频里可看出这个机器人碰到墙壁时迅速地作出反应爬了上去. 据了解,这个爬墙机器人名叫 VertiGo,由迪士尼研究中心和苏黎世联 ...

  5. HK游记 Day2迪斯尼&lpar;下)

    接下来我们要去看狮子王庆典,绕啊绕啊,终于进场了,说实话我对一大帮人扮演动物歌舞表演不是很感冒,静倒是觉得很好看,印象最深的是狮子王的主题曲,还有大象车,长颈鹿车,狮子王车,静举着手机拍视频. 看完表 ...

  6. Android属性动画完全解析&lpar;下&rpar;

    转载:http://blog.csdn.net/guolin_blog/article/details/44171115 大家好,欢迎继续回到Android属性动画完全解析.在上一篇文章当中我们学习了 ...

  7. Android属性动画完全解析&lpar;上&rpar;

    Android属性动画完全解析(上) 转载:http://blog.csdn.net/guolin_blog/article/details/43536355 在手机上去实现一些动画效果算是件比较炫酷 ...

  8. Android 属性动画(二)

    当然了属性动画还有一部分的知识点,也能做出很不错的效果,将在本篇博客为您展示~ 1.如何使用xml文件来创建属性动画 大家肯定都清楚,View Animator .Drawable Animator都 ...

  9. Android 属性动画(Property Animation) 全然解析 (下)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38092093 上一篇Android 属性动画(Property Animatio ...

随机推荐

  1. 爬虫技术 -- 进阶学习(九)使用HtmlAgilityPack获取页面链接(附c&num;代码及插件下载)

    菜鸟HtmlAgilityPack初体验...弱弱的代码... Html Agility Pack是一个开源项目,为网页提供了标准的DOM API和XPath导航.使用WebBrowser和HttpW ...

  2. Jquery插件easyUi表单验证提交

    <form id="myForm" method="post"> <table align="center" style= ...

  3. C&plus;&plus;学习25 纯虚函数和抽象类

    在C++中,可以将成员函数声明为纯虚函数,语法格式为: ; 纯虚函数没有函数体,只有函数声明,在虚函数声明结尾加上=0,表明此函数为纯虚函数. 最后的=0并不表示函数返回值为0,它只起形式上的作用,告 ...

  4. &lpar;原创&rpar;fedora 17安装KVM虚拟机

    1.安装KVM yum groupinstall Virtualization 'Virtualization Client' 2.安装api支持 yum install libvirt servic ...

  5. tensorflow tanh应用

    1.tanh()函数 tanh是双曲函数中的一个,tanh()为双曲正切. 双曲正切函数的导数公式:   2.tensorflow tanh()例子 import tensorflow as tf i ...

  6. mysql修改记录

    增加一列:alter table bf_agt_dep_acct_sap_sub add column cust_age varchar(10) not null; 改变属性:alter table ...

  7. ubuntu配置

    首先就是Ubuntu的更新源问题,需要更改,否则更新不了. 其次就是Securecrt的远程登陆问题,windows主机和ubuntu虚拟机如果能通信,要求在同一网段上,而ubuntu是动态加载,需要 ...

  8. Arrays工具、二维数组以及LeetCode练习题

    1 Arrays PS:Arrays位于java.util包下 int binarySearch(type[] a, type key); 使用二分法查询 key 元素在 a 数组中的索引,如果数组不 ...

  9. IOS gallery

    https://github.com/mengxianliang/XLCardSwitch

  10. angular 如何使用第三方组件ng-bootstrap

    1.在你的项目中以下指令    npm install --save @ng-bootstrap/ng-bootstrap 安装完成会显示 + @ng-bootstrap/ng-bootstrap@1 ...