ass文件下载地址:http://pan.baidu.com/s/1boG3toj
这次公开的是战姬绝唱live 2016中的第18首,本人比较喜欢的一首
水树奈奈的Beyond the BLADE,这个ass文件需要VSFilterMod才能正确渲染出效果
下面直接进入正题,进行模板解析
code行 | |||
行号 | 修饰语 | 功能 | 备注 |
2 | once | 定义shape图形数组,方便后面调用 | 各种羽毛图形 |
3 | once | AutoTags函数,详细说明见http://www.tcax.org/forum.php?mod=viewthread&tid=1230 | |
4 | syl | 针对每一个音节都取一个介于-60到60之间的角度 | 用于JP特效随机刀刃方向 |
5 | line | 针对每一行都取一个介于30到45之间的角度 | 用于JP1特效的整行刀刃方向 |
template部分是经典三段写法基础上添加额外效果的形式
中文部分为日文的简化效果,故以下只解析日文部分模板行
template行 | ||
行号 | 修饰语 | 功能 |
7 | syl | 入场效果,淡入+ 原位放大 |
8 | syl | 该音节的前200ms产生抖动 |
9 | syl | 剩余时间固定位置,直到退场 |
10 | syl | 退场效果核心,下方详解1 |
11 | syl | 与10对称的退场效果 |
12 | syl noblank notext | 刀刃效果,下方详解2 |
13 | syl | 同7 |
14 | syl | 在8的基础上修改了高亮颜色 |
15 | syl | 在8的基础上稍微透明 |
16 | 同9 | |
17、18、19 | 同10/11/12 19使用的角度值为a | |
20 | syl noblank notext | 羽毛飘散效果 |
详解1:
重点为以下部分
\movevc(0,0,0,-50)
\clip(
m !$sleft-$swidth/2! !$stop-5!
l !$sright+$swidth/2! !$stop-5!
l !$sright+$swidth/2! !math.round($middle-$swidth*math.tan(angle/57.3))!
l !$sleft-$swidth/2! !math.round($middle+$swidth*math.tan(angle/57.3))!
)
movevc为mod标签,用来移动clip中的矢量
clip内的四个点组成的图形为梯形,如图所示
可观察到这个角度是基于水平轴逆时针旋转的(因为我们之前设置的角度是-60到60),这时的角度取值是-17,即此次执行生成的angle数值
所以本质上,10行与11行就是将一个字符clip出两个部分,然后在退场时分别向上下移动
理解了这一点,让我们进入
详解2:
首先解析
m !-10-$swidth/2! 0 l !-$swidth/2! -1 l !$swidth/2! -1 l !$swidth/2+10! 0 l !$swidth/2! 1 l !-$swidth/2! 1
这部分是依据音节的宽度生成刀刃的图形,不知道swidth是啥的,请自己去复习内联变量
比较特殊的是,这个刀刃是两边尖中间厚的,将生成的代码扔到assdraw里面就可以看到
而刀刃旋转的角度,就是之前定义的angle,这样刀刃方向就会与梯形斜边走向一致
\clip(!$sleft-20!,!$stop-30!,!$sleft-20!,!$sbottom+30!)
\t(0,400,
\3c&HFF9900&
\clip(!$sleft-20!,!$stop-30!,!$sright+20!,!$sbottom+30!)
)
这段代码是让刀刃从左到右显现的代码,很容易理解,不再赘述
剩余的羽毛飘散效果不是很复杂,自行理解即可,有问题可以在下面评论中问
战姬绝唱Live 2016中你最喜欢的字幕特效?
投票总人数: 216
至今没用过 clip 的我…