微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

After Effects 中是否有睡眠/等待/延迟功能?

如何解决After Effects 中是否有睡眠/等待/延迟功能?

我正在尝试编写一个脚本,将 final_text 一个字母一个字母地写入一个 Text Layer,在每个字母被写入之间等待一小段时间。有什么办法吗?

final_text = '#a80030';
characters = '';
for(i = 0; i < final_text.length; i++){
    characters += final_text[i];
    text.sourceText +=  characters;
    #sleep for 500ms
}

解决方法

你混淆了脚本和表达式。 $.sleep 是脚本中全局对象的方法,但不是表达式中的方法。并且在表达式中使用它是没有意义的,因为它只会使表达式需要更长的时间来计算。您需要read the manual

TL;博士: 创建一个包含最终文本的文本层。您还可以在图层的文本源属性上使用表达式。将不透明度文本动画制作器(您确实阅读了手册,不是吗?)应用于图层。将动画师的不透明度设为零。添加表达式选择器并删除普通选择器。

enter image description here

将此表达式应用于选择器:

(time*2 < textIndex)? 100 : 0

这使用字符索引与当前时间 * 2(时间以秒为单位)进行比较,因此每 500 毫秒设置为零不透明度(选择 100%)的字母的索引将增加。

enter image description here

,

是的,有 $.sleep() 方法。 所以你需要做的就是

$.sleep(500);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。