╋艺 镇╋╋影视の后期╋┣◇After Effects → 关于AE表达式wiggle()在多维参数上的单独震动解答


  共有13607人关注过本帖树形打印复制链接

主题:关于AE表达式wiggle()在多维参数上的单独震动解答

美女呀,离线,留言给我吧!
mazecity
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:243 积分:2134 威望:0 精华:0 注册:2007/12/25 16:21:28
关于AE表达式wiggle()在多维参数上的单独震动解答  发帖心情 Post By:2014/10/11 16:59:13 [只看该作者]

  

  

  

  对于AE中wiggle的表达式大家并不陌生,是AE中最为常用的表达式之一,但是大家对于在单方向的运动规律却并不熟悉,在这里写一篇博文解释一下。

  这个问题在我的表达式教学中有过讲解,方法是通过使用链接的方式把wiggle中的一个参数链接到一个slider上单独控制,这样是完全可以的。但是有位细心的买家问到,如何不通过链接而是用书写的表达式来单独控制单个方向的震动呢?

  wiggle(freq, amp, octaves = 1, amp_mult = .5, t = time)是基本形式,wiggle()括号里面写5个数组,但是我们一般只写两个,即wiggle(频率,幅度),频率是每秒钟震动次数,频率是2也就是每秒钟震动2次,频率是0.5的话也就是每秒震动0.5次即2秒震动一次。幅度是在基数(即做表达式的参数的原数值)的基础上上下进行震动。好了,这是最基础的解释。

  如果对二维的固态层的position书写wiggle(2,20)的话就是在X和Y轴两个方向进行震动。如何进行单向震动呢?比如如何在x轴向上wiggle(2,20)的方式震动而在y轴wiggle(3,25)的方式震动呢?

  方法一,单独链接slider,也就是添加2个slider的特效,在position上面书写

  x=effect("Slider Control")("Slider");

  y=effect("Slider Control2")("Slider");

  [x,y]

  然后在Slider Control上面书写wiggle(2,20),在Slider Control2上面书写wiggle(3,25)就可以完成单独震动。

  方法二,书写一个表达式完成效果。但是要明白一个问题,wiggle是多维的属性,当直接书写在二维或者三维四维数组上是可以的,比如在图层的position上书写wiggle是可以的,不会报错,而且这个层是二维层三维层都可以,但是如果这样书写:

  

  

  

  可以看到这样书写就会报错,错误说数组不能扩展到大于一个数值,也就是说表达式中的x和y仅仅代表了一个数值,不能代表多个数值,而wiggle是多维的,当然不能直接赋予x或者y这样一维的数组。

  但是如果直接书写wiggle的话,不能单个控制图层在x和y轴上单独的运动,这种情况怎么办呢?

  在AE中,可以在多维数组后面添加[0][1][2]来限定维数,这些在《罡渡晨星AE表达式全析教程》里面有详细的解释,如果想深入学习研究可以看一看。[0]代表x轴,[1]代表y轴,[2]代表z轴,这样就可以限定多维数组中的单轴数值。AE里面的参数不仅仅只有三个维数,有些会很多,比如颜色是四维数组。这样在wiggle后面添加一个维数的限定就可以进行单轴的赋值了。

  所以解决单轴不同震动的问题可以书写这样的表达式。

  x=wiggle(2,20);

  y=wiggle(3,25);

  [x[0],y[1]]

  OK,问题解决。有人可能问到那x和y这俩数组不就是多维的了吗?对,没错,但是在最后返回的时候添加了[0]和[1]就限定了多维参数中的其中一个维数的数值了。这些在我的表达式教程里面有过讲解,讲的还是比较细致的,在这里给自己做个小广告哈

  

  

  再举一个例子,我有一个三维的图层,在position上赋值,x轴数值为20,y轴数值为50,z轴数值为wiggle(3,30),可以书写表达式

  x=22;

  y=50;

  z=wiggle(3,30);

  [x,y,z[2]]

  好了问题解决了!

  再出一个题大家可以看看是什么效果,一个三维图层在position上书写表达式如下,

  a=wiggle(2,25);

  [a[0],a[1],a[2]]

  看看每个轴是一起震动还是单独震动。




http://blog.sina.com.cn/s/blog_6f00aab501016d6a.html


[此贴子已经被作者于2014-10-11 17:00:19编辑过]


  
“艺镇”官方站:www.zyzsky.com QQ群:1221854  回到顶部