向安宇知识库 向安宇知识库
  • 读书向
  • 学习向
    • AI工具
    • AI研究
    • 笔记
    • AIP:克丽丝AI日志
  • 创作向
    • 写作
      • 非虚构
      • 剧本
      • 小说
      • 文言
      • 随笔
      • 日记
    • 视听
      • 纪录片
      • 设计
      • 视频
      • 摄影
    • 课程
  • 影视向
    • 创意策划
    • 前期拍摄
    • 后期制作
    • 影像实验
    • 影像设备
    • 大师镜头
    • 电影赏析
    • 视频论文
    • 项目复盘
  • 折腾向
    • 穿越机
    • 户外
    • 代码
    • 手工
    • 书法
    • 篆刻
    • 绘画
首页 › 创作向 › 课程 › AE表达式|随机单个文字跳跃效果
  • 3
  • 0

AE表达式|随机单个文字跳跃效果

向安宇
2018-02-01 9:39:25

AE表达式|随机单个文字跳跃效果-向安宇知识库

我们想要实现一个什么样的效果?

1、文字在y轴方向随机跳跃
2、随机的单个文字放大

效果如下:
AE表达式|随机单个文字跳跃效果-向安宇知识库

那么,要实现这种观念效果需要怎样做?

 

1、文字在y轴方向随机跳跃

文字的随机跳跃,我们依然用“可能性随机”表达式:

  1. probability = 4;
  2. r = Math.round(random(-probability+2,1));
  3. v = clamp(r,0,1);
  4. wiggle(10,400*v)

但是这里Position是一个阵列,直接给Position加上上面这个表达式,会在x轴和y轴两个方向随机跳跃。怎样只在y轴跳跃?

 

两种方法。

方法一:

将上面加在Position上的表达式改一下:

  1. probability = 4;
  2. r = Math.round(random(-probability+2,1));
  3. v = clamp(r,0,1);
  4. s = wiggle(10,400*v) ;
  5. x = value[0];
  6. y = s[1];
  7. [x,y]

因为Position是一个阵列,也就是说不是单独的一个数字,而是两个数字[x,y],这里s = wiggle(10,400*v)返回值也只会是一个阵列[x,y](s是一个单独的字母,但是这里必须把它看成两个数字的阵列,可以理解成一个拥有x值和y值的封装包)。

 

AE中以0、1、2分别代表阵列中第一、第二、第三个值,这里位置阵列中[0]代表的就是x轴,[1]代表的就是y轴。我们这里只想要s = wiggle(10,400*v)返回值[x,y]中的y值,也就是要将这个阵列中的y值提取出来,表达式里这个值可以写为 s[1] 。

 

在这个例子里,可以在表达式编辑里用Position[0]来提取没有经过表达式运算的原本的x轴的值,不过在AE里,原本的值一般会用value来表示,更加通用一些,所以这里提取原本的x轴的值,可以写作: value[0] (同样的,value[1]代表的是没经过其他表达式运算的原本的y轴的值)

 

那么,这里要实现x轴不动(本案例中未加关键帧,x轴是固定的),也就是x不参与“可能性随机”表达式的运算,y轴随机运动,后面应该加上的语句是:

  1. [value[0],s[1]]

 

为了整齐美观写成:

  1. x = value[0];
  2. y = s[1];
  3. [x,y]

 

方法二:

AE表达式|随机单个文字跳跃效果-向安宇知识库

右键Position,选择Separate Dimensions,会把Position分成两个参数:X Positon 和 Y Position 。

然后在Y Position上加上“可能性随机”表达式。

 

2、单个文字随机放大

首先添加文字的放大效果:
AE表达式|随机单个文字跳跃效果-向安宇知识库

这样直接添加之后,改变scale的值,会所有文字一起放大缩小,所以接下来在选择范围这里,选取单独的文字。

 

AE表达式|随机单个文字跳跃效果-向安宇知识库

默认的单位是Percentage百分比选择,也就是以文本长度的百分比作为单位,比如start为0%,end为50%时候,选择的就是文本前面50%的文字。

 

这里要选取单个文字,将单位改成Index,以单个的文字(字母)为单位。

 

AE表达式|随机单个文字跳跃效果-向安宇知识库

比如这里:四个字“飞向电影”,每一个字是一个单位。

start为0,表示从最开始的位置开始选择;

end为1,表示往后选择1个单位就结束,如果end为2,那就是往后选择两个单位,选择的范围就变成“飞向”两个字。

 

offset是偏移,值为1,表示往后偏移一个单位,本例中就会选择成为“向”;值为2,偏移两个单位,选择“电”,依次类推。

 

有offset参数,要随机选择单独文字就很简单了,就是让这个偏移值随机,也就是添加一个wiggle就可以了。比如可以直接在后面添加wiggle(4,2)。

 

在这里,向安宇希望随机放大效果不是从“飞”开始的,而是从这段位子中间开始的。这里有4个文字,那么我会选择offset的振幅(括号里第一值为频率,第二个值为振幅)是文字长度除以2,也就是2。

 

本例是可以直接添加2,但是表达式的好处就是方便修改。比如:如果我把文字改成一句8个字的话,就需要重新打开表达式编辑,并找到这一行的这个数字,把2改成4 。这样无疑是复杂的,不方便的。所以我需要让offset自动偏移到中心点,方法很简单,就是用text.sourceText.length找到这一个文字层的阵列长度,然后除以2 。

 

  1. n = text.sourceText.length/2;
  2. wiggle(4,n)

 

这里向安宇发现wiggle的值是有小数点的,个人觉得效果太平滑, 就再添加了一个取整的函数(顺便加一个变量美化一下):

  1. t = text.sourceText;
  2. n = t.length/2;
  3. value = Math.round(wiggle(3,n))

 

现在实现了随机选择单独的文字,并且这个文字层可以随意改动文字(可以复制文字层,添加不同文字),还需要添加scale下的表达式。

 

注意这里要改的不是文字层的scale,而是上面我们添加的Animate下Scale效果选项中的Scale。这里依然是添加“可能性随机”表达式。但是添加后发现,Scale是一个阵列,所以会随机在x轴方向放大和随机在y轴方向放大,我们希望的是x轴和y轴同步放大,所以把阵列中的第一个值提取出来,让x轴和y轴方向的放大都是用同一个数值,在后面添加输出结果的语句:

  1. probability = 4;
  2. r = Math.round(random(-probability+2,1));
  3. v = clamp(r,0,1);
  4. x = wiggle(10,100*v);
  5. [x[0],x[0]]

 

也可以这样写:

  1. probability = 4;
  2. r = Math.round(random(-probability+2,1));
  3. v = clamp(r,0,1);
  4. s = wiggle(10,100*v);
  5. x = s[0];
  6. [x,x]

后面一种写法多加了一个变量,其实没有必要,这么写是为了思路可以表达更清楚:因为scale是一个阵列,添加wiggle之后,会是两个不同的随机值,可能是[100,50],也可能是[33,54]。我们要做的就是把这两个值中的一个提取出来,x = s[0], 同一个值重复,组成新的阵列。比如把[33,54]中的33提取出来(阵列中第一个数字用[0]表示),组成[33,33]。这里可以提前阵列中的第一个数值,也可提取第二个数值,s[0]可以是s[1],都不影响。

 

最终效果达成。

 

这种文本效果在很多恐怖片的包装里大量应用,是比较常见的一种文本效果。

AE表达式
3
AE表达式|利用Math.round,random,clamp函数表达“可能性随机”
上一篇
AE表达式|文字闪烁及滚动效果
下一篇

评论 (0)

登录后可发布~
立即登录
暂无评论

向安宇

痴迷文字,醉心影像
447
文章
5
评论
325
喜欢

聚合文章

1.我将深入研究如何提升学习力,以及如何用AI提升学习效率
克丽丝是谁?(人物设定1.0)
AIP克丽丝的构想
wordpress也要拥抱AI

近期评论

不同意知识过时这么快,数学公式几百年都没变啊
—— Baron von Laughsalot 2 周前 1.我将深入研究如何提升学习力,以及如何用AI提升学习效率
这学习方法太适合我这种记性差的了,必须追更!
—— 狂血战士 3 周前 AIP克丽丝的构想
数字人做语言教学太香了,求Anni快出实操指南!
—— 贪吃小熊 3 周前 Anni搞钱系列:普通人用AI,到底能做起来什么副业?
想问作者会开线下课吗?想带孩子去听听
—— 秋分桂落 3 周前 1.我将深入研究如何提升学习力,以及如何用AI提升学习效率
想问下这个AI工具对服务器配置要求高吗?
—— 狂喜的烟花 3 周前 wordpress也要拥抱AI

猜你喜欢

AE表达式|28、如何在两个表达式之间无缝转换?@ linear

AE表达式|28、如何在两个表达式之间无缝转换?@ linear

2018-10-19 12:06:17
2,125 0 44
MG点线动画临摹《THE EDITOR》-04(切割、打磨和纸张飘落)

MG点线动画临摹《THE EDITOR》-04(切割、打磨和纸张飘落)

2018-12-07 18:00:44
2,577 0 2
AE表达式|01、这个教程是个啥玩意儿?

AE表达式|01、这个教程是个啥玩意儿?

2018-07-02 12:09:55
2,451 2 8
3、ISO

3、ISO

2019-11-06 21:54:32
2,052 0 0
3

关于我:

想要读万卷书,行万里路,看万部电影。

推荐栏目:

视频论文 课程 后期制作 非虚构 照片 视频

特色专题:

专题汇总 宜看一侃 帧影帧画 重读文学史 青玉记
Copyright © 2016-2026 向安宇知识库. 鄂ICP备16005400号-1 鄂公网安备42050602000017号
  • 读书向
  • 学习向
    • AI工具
    • AI研究
    • 笔记
    • AIP:克丽丝AI日志
  • 创作向
    • 写作
    • 视听
    • 课程
  • 影视向
    • 创意策划
    • 前期拍摄
    • 后期制作
    • 影像实验
    • 影像设备
    • 大师镜头
    • 电影赏析
    • 视频论文
    • 项目复盘
  • 折腾向
    • 穿越机
    • 户外
    • 代码
    • 手工
    • 书法
    • 篆刻
    • 绘画
  • 剪辑
  • 转场
  • 纪录片

向安宇

痴迷文字,醉心影像
447
文章
5
评论
325
喜欢