讲故事的手艺人 讲故事的手艺人
  • 创作向
    • 写作
      • 非虚构
      • 剧本
      • 小说
      • 文言
      • 读书
      • 随笔
    • 拍摄
      • 纪录片
      • 设计
      • 视频
      • 摄影
  • 策划向
    • 策划资料
    • 创意之道
    • 短视频研究
  • 技术向
    • AI
    • 前期拍摄
    • 后期制作
    • 原创教程
    • 影像实验
    • 影像设备
    • 穿越机
  • 艺术向
    • 研究学习
    • 大师镜头
    • 电影赏析
    • 视频论文
    • 经验总结
  • 注册
  • 登录
首页 › 技术向 › 原创教程 › AE表达式|文字闪烁及滚动效果

AE表达式|文字闪烁及滚动效果

向安宇
2018-02-01 10:04:31原创教程阅读 4,301

AE表达式|文字闪烁及滚动效果-讲故事的手艺人

Modulus函数

Modulus简单说就是求余,在AE表达式里用“%”表示,比如:
5÷3=1余2
那么表达式里:5%3 返回值就是2

解释了这个函数,我们就可以来说怎么实现文字闪烁了,首先建立一个文字层,随便输入几个字作为占位符,然后给sourceText添加表达式。
AE表达式|文字闪烁及滚动效果-讲故事的手艺人

效果是这样的:
AE表达式|文字闪烁及滚动效果-讲故事的手艺人

解释一下这个表达式:

首先建立一个文字阵列t = ["飞向","电影","致力于","视频","创意"],在AE表达式里的阵列[0]代表第一个值,[1]代表第二个值……依次类推。这里引入了变量t,所以t[0]就是“飞向”,t[1]就是“电影”。

为了让时间线播放时候字体自动切换,引入time,t[time]就可以实现变化,比如time为1时,就是“电影”。time的单位是秒,其值是有小数点的,所以增加一个Math.floor向下取整的函数。

接着要解决的是:上面定义的文字阵列t中,只有5个值,当time≧5之后,表达式就会报错,因为阵列里并不存在[5]。这里就需要用到Modulus函数了:
5÷4=1余1,返回值是1 ;
6÷4=1余2,返回值是2 ;
……
表达式写作Math.floor(time)%4,就可以循环播放了。之所以%4,是因为上面文字阵列长度是4,所以这个数字可以用length代替。最后表达式写作:

  1. t = ["飞向","电影","致力于","视频","创意"];  
  2. n = Math.floor(time)%t.length;  
  3.   
  4. t[n]  

Split()函数

split函数允许把内容分割成为阵列。用法很简单,比如这个例子里,我并不向每次更改文字内容都要到表达式编辑界面,而是希望直接更改文字层。所以让“t”直接拾取sourceText

t = text.sourceText;

然后将“t”分割成为整列

s = t.split(" ");

引号里的值就是定义用什么来分隔阵列,可以是空格、回车、逗号等等。当然还需要把地下两行的“t”改成“s”,因为这里我们需要的是阵列“s”,最后表达式就是:

  1. t = text.sourceText;  
  2. s = t.split(" ");  
  3. n = Math.floor(time)%s.length;  
  4.   
  5. s[n]  

 
但是其实这样做依然有个问题,因为链接到的是本图层的文字内容,窗口显示的会是经过表达式运算的内容。也就是说,在编辑文字内容时候,窗口显示的只会根据当前时间线位置显示阵列中的一个值,非常不方便。
 
解决办法就是新建文字层,把“t”的值拾取过来:

AE表达式|文字闪烁及滚动效果-讲故事的手艺人

这样可以直接在新建的文字层上输入和编辑内容,编辑完后隐藏就可以了。表达式变成为:

  1. t = thisComp.layer("飞 向 电 影").text.sourceText;  
  2. s = t.split(" ");  
  3. n = Math.floor(time)%s.length;  
  4.   
  5. s[n]  

这个表达式里是用空格作为split函数分隔的依据,AE表达式用的是JavaScript,可以用“\ r”(中间无空格)来代替“回车”。这样方便输入大段的文字。

这里向安宇复制了一段之前分享的弹性表达式作为文字内容,并把添加了上述表达式的文字层复制基层,调整y轴位置让他们上下排列好,就实现了文字滚动的效果了。

AE表达式|文字闪烁及滚动效果-讲故事的手艺人

AE表达式|文字闪烁及滚动效果-讲故事的手艺人

其表达式如下(加上index是为了让每层文字不同):

  1. t = thisComp.layer("flytofilm").text.sourceText;  
  2. s = t.split("\r");  
  3. n = Math.floor(time*4)%s.length;  
  4.   
  5. s[n+index]  
AE表达式
赞赏 赞(3) 收藏(0)
AE表达式|随机单个文字跳跃效果
上一篇
AE表达式|关联出点和入点
下一篇

请登录以参与评论

现在登录
暂无评论
标签
720全景 ACES AE AE案例 AE表达式 Anyu翻译 CSC电影学院 fusion Hackintosh MG动画 ps教程 vlog wordpress 创意方法 剪辑 字幕 帧影帧画 抖音 摄影 文案 混剪 混音 灯光 看电影 磨皮 穿越机 纪录片 编剧 美术 美食 論語 调度 调色 达芬奇 重讀文學史 青玉记
室内360全景图的简单修图
2020-10-13 21:51:45
2,691 0 0
达芬奇:高频锐化
2020-03-21 22:41:26
3,879 0 3
3、ISO
2019-11-06 21:54:32
1,754 0 0
2、光圈和景深
2019-11-03 17:10:31
1,758 0 2
3
  • 3
  • 0
关于我:

想要读万卷书,行万里路,看万部电影。当过人民教师,做过策划师,入行影视做剪辑、导演。艺术是目的,技术是支撑,不断钻研,积聚梦想,同时分享干货。

推荐栏目:
视频论文 原创教程 后期制作 非虚构 照片 视频
特色专题:
专题汇总 宜看一侃 帧影帧画 美食摄影 重读文学史 青玉记
Copyright © 2016-2025 讲故事的手艺人. 鄂ICP备16005400号-1 鄂公网安备42050602000017号
  • 创作向
    • 写作
    • 拍摄
  • 策划向
    • 策划资料
    • 创意之道
    • 短视频研究
  • 技术向
    • AI
    • 前期拍摄
    • 后期制作
    • 原创教程
    • 影像实验
    • 影像设备
    • 穿越机
  • 艺术向
    • 研究学习
    • 大师镜头
    • 电影赏析
    • 视频论文
    • 经验总结
# 剪辑 # # 转场 # # 纪录片 #
向安宇
痴迷文字,醉心影像
420
文章
5
评论
325
喜欢