GDC2016: Animating With Math

Unity和UE4的Material Editor中都有类似VertexOffset的功能, 可以在VertexShader中驱动顶点, 做一些程序控制的顶点动画
这里写图片描述
用顶点动画的原因: 骨架是共享的, 骨骼动画是共享的等, 同时节省了骨骼数和动画师的工作量
这里写图片描述
使用cos三角函数+Time是基本的技巧, 配合顶点色控制每个部分的权重
这里写图片描述
材质参数暴露出来能够使用程序逻辑进行动态控制
这里写图片描述
顶点色的RGBA通道可以都用上, 进行不同的权重控制, 配合随时间变化的三角函数值, 可以做出蠕动的效果
这里写图片描述
其实水面的做法跟这个很类似
这里写图片描述
自从用了Unreal的MaterialEditor, 都懒得直接写Shader了
这里写图片描述

另外一个应用就是做头发的动画
这里写图片描述
同样的, 顶点红色通道可以控制移动动的权重
这里写图片描述
蓝色通道能够控制移动的时间
这里写图片描述

模型的运动也可以通过顶点色进行控制
这里写图片描述
甚至是面部的结节形状也可以通过顶点色进行微调
这里写图片描述
我觉得口型动画也可以这么做
这里写图片描述

必要时需要外部控制的材质参数进行配合
这里写图片描述
这里写图片描述
比如这个摆动的动画
这里写图片描述
这里写图片描述
只用顶点色是不够的
这里写图片描述
配合关键帧参数进行控制
这里写图片描述

其实除了摆动之外, 还可以实现旋转的效果
这里写图片描述
一些自转完全可以使用材质来实现, 免去了程序逻辑驱动或骨骼动画
这里写图片描述
举个例子
这里写图片描述

最后是用到的工具
这里写图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值