译注:这是 KSM 谱面制作者 Мороже 的技术文章。
updateTrigger
、
updatePeriod
、
waveLength
、
mix
是格式/参数名,保留英文;“临时命令”是作者圈内对这种 ksh 内联参数命令的称呼。
原文
早上好,我是 K-Shoot Mania package 制作团队(?)TapeStop100 的 Мороже🛰️ 1 。本文是两年前文章的续篇;虽说是续篇,实为假定读者理解前两篇内容的应用篇。若只想知道定义效果器能打开哪些可能性,可直接继续读;但要亲手挂效果,仍需定义效果器的基础知识,请先读 ① 与 ② 。
这次围绕附点八分 2 的 Retrigger,分两部分介绍:把附点八分做成跳跃节奏;以及实现梦想中的附点八分 Retrigger 3 。
做谱时,遇到“附点八分 + 八分”的节奏 4 ,会不会苦恼效果怎么处理?碰到这种节奏,往往会被标准 Retrigger 的规格束缚,不自觉放成这种 Retrigger 5 :
(曲线旋钮用的是我前些日子公开的 K-Shoot Mania 曲线旋钮自动生成工具;这是硬广,不是 Dynamax 6 。)
这样当然也可以,但不想更有效活用附点八分的声音吗?例如把旋律开头从“テッテ・テン・テン”变成“テッテ・テッテ・テン”,不是很有趣吗?再说得直白一点:不想做出《ディスコン》那种感觉吗?
所以接下来提出另一种可能性:充分利用定义效果器的功能。 追记: 我公开了本次录视频所用的音源与三份谱面文件;虽然没什么了不起的,也许能作参考,想在手头跑起来可下载 7 。
使用上一讲②刚学会的技巧:在任意位置放
updateTrigger=on
8
。在每拍起点之后、隔一个附点八分的位置
9
,放入
fx:*w:updateTrigger=on
:
其中
*w
定义如下:
#define_fx *w type=Retrigger;updatePeriod=0;rate=88%
来听结果:
跳跃感很到位。这个挂法对附点八分的泛用性很高,只需一行定义效果器、一次直接编辑,制作也简单;请记住并从今天开始积极用起来。
但有一个缺点:以四拍踩底鼓为主的曲子若这样挂,四拍底鼓的第二拍不会响,声音可能显得别扭,损害 groove 感,这点要注意。
这种挂法在某游戏中也很常见。立即想到的例子是
《び[EXH]》
白键那段超长纵连的乐句中,为利用附点八分节奏而放进了这类效果。下图则是《Cappuccinno Hearts[MXM]》这里的 Re8:
updateTrigger
位于黄绿色线处。
KSM 谱面制作者们,是否想过“想在附点八分上挂リトリ!”?我也想过,大家想必也是;但 Editor 没有这个功能,只能放弃……好消息是:在 K-Shoot Editor 中,充分使用用户定义效果器, 附点八分 Retrigger 可以实现 。
解释会稍长,先看成品视频。(第一个是附点四分,第二个是附点八分。)
……画面中某处的黄绿色文字注释很灾难,但这种事很常见,不用在意 10 。
从上一讲起,我一直若无其事地念着
fx:free:updateTrigger=on
、
fx:*w:updateTrigger=on
这类咒语。这是一种被称作“临时命令”的写法(准确说是我们擅自这么叫的)。格式如下
11
:
fx:(定义效果器名称):(参数)=(值)
把它写入
ksh
文件后,会执行如下命令:“在该行所播放到的乐曲位置,将该定义效果器的该参数改为该值。”所以前面的
fx:free:updateTrigger=on
,正是“在此处改变定义效果器
free
的
updateTrigger
参数”。若是以
#define_filter
定义的旋钮效果器,则写:
filter:(定义效果器名称):(参数)=(值)
同样能改参数。也不只可改
updateTrigger
:例如定义名为
FL
的 Flanger,在曲中插入改变其
stereoWidth
的临时命令,之后
FL
发出的声音就会改变。若不想增加太多定义效果器、但只想在这里改
updatePeriod
,它也很方便。
除 SideChain 外所有效果器(Retrigger、Gate、Flanger、Pitchshift、BitCrusher、Phaser、Wobble、Tapestop、Echo、SwitchAudio)都有共同参数
mix
。
mix
指定 FX 长条按住期间原音和效果的混合比例;例如按住指定 Retrigger 的 FX 长条时,默认会变为
mix=100%
12
。
这里有一点很绕:“FX 长条按住期间”
并不
是“Editor 上右键选了该效果的那根 FX 长条按住期间”。例如如下指定,按住这个 FX-R 长条期间,会一直响定义效果器
FL
:
只为让效果发声,似乎直接在 Editor 放 FX 长条、右键选效果就好;但此法的可贵之处是 不受 Editor 的效果指定方式束缚 ,有两项好处。
例如给上图中原本没有指定效果的 FX 长条指定 BitCrusher,就会同时响 BitCrusher 和 Flanger。即使把三行左右临时命令叠起来写,也会如预期工作。以下是实在例 13 :
filter:TS60:mix=0%<100%
filter:RP16:mix=90%
filter:PS:mix=80%
叠多个时要稍微注意顺序 14 :效果按写入的先后叠加。若要在 Gate 使声音断续后,再轻轻叠一层 Wobble,必须写 Gate → Wobble;若反过来写 Wobble → Gate,就会把柔和的声音切得断续,完全违背原意。
FX 长条上同时用多个效果稍少见;但旋钮上,把 Re16、Ga16 混进标准 PEAK、HPF、LPF、BITC 的例子在某游戏里极多。KSM 谱面里给旋钮挂 Re16 时常见没有混原音的做法;我认为混起来绝对更好听,所以
给旋钮挂 Retrigger 等效果时请用临时命令指定
15
。
mix=80%
左右稳妥;我个人也喜欢用约 50% 的 mix,挂
rate=60%
左右、比较尖锐的 Gate。
KSM 谱面常见放两根 FX 长条、各设不同效果来混合的手法;但某游戏的同时按两根 FX 长条,规格是两根中 后按下 那根所设的效果会 独立 发声 17 。
waveLength
参数
18
① 说得很长,但这才是本文本质。Editor 中 Retrigger 或 Gate 的切分(
waveLength
)限定为 1~192 的整数;用这个方法,却可按文件末尾定义的
waveLength
原样发声。可惜
waveLength
实用上不能直接写
3/16
一类数值,但可用毫秒指定长度;这样即使会有微小偏差,也能响出
梦想中的附点八分效果
19
。
先测量想挂效果的曲目中附点八分的长度。非常简单:K-Shoot Editor 居然有一个像是专为此准备的便利功能“显示光标位置时间” 20 ,在下拉菜单选择“编辑(E)”→“显示光标位置时间(V)”即可。
既已得知附点八分区间的起止时刻,取差即可得到区间长度 21 。然后定义效果器;这次顺便也试完全同原理可做的附点四分 22 Retrigger:
#define_fx 3/8f type=Retrigger;updatePeriod=0;rate=100%;waveLength=563ms
#define_fx 3/16w type=Retrigger;updatePeriod=0;rate=90%;waveLength=282ms
定义后,在想由リトリ取回的样本起点放
fx:(效果器名):updateTrigger=on
,再用
fx:(效果器名):mix=100%
与
fx:(效果器名):mix=0%
围住 FX 长条,即完成。此时某一处可能需放两行临时命令
23
;但现阶段 Editor 居然
不支持
输入两行以上临时命令,因此老实地先从 Editor 写任意注释作足迹,再以文本编辑器手写
24
。
包括此前讲座,本文内容对我周围的 TP100 成员大致都是已知信息 25 。这几年和 TP100 外的人交流时,我才意识到:外面真正认真思考效果再放置的人仍很少,甚至很多人只用初始 deck 的效果。因此我觉得需要文章来传播谱面制作技术。KSM 没有传播这类技术的论坛,看起来只有懂的人聚在一起让信息循环;希望这种启蒙能让资讯传到更多人手里。
包括正在读本文的人在内,活跃于 KSM 的 effectors 多多少少都有对“某游戏”的憧憬。本文技巧看上去或许高级,但那个游戏的效果,早在 III 后期~IV 期间就已经多样化到初始 KSM deck 很难轻松复现:如旋钮同时挂 LPF 与 Re48;为让双激光的移行/落地更柔和而给旋钮挂 TapeStop;自然地使用
updatePeriod=1/4
的リトリ;用附点四分、
rate=100%
的リトリ把曲子砸碎;给旋钮挂 Wobble,让原本即使旋钮移动也不发声的情形响出类似的声音……若目标是那个游戏的氛围,不要束缚在初始 deck;观察喜欢的 effector,尝试各种效果,会是好方法。
当然谱面不只有效果一个要素,但钻研它绝不吃亏。读到这里的你,也要不要沉进效果器沼? 26
写得太多,我真的不知道如何收尾,于是强行在此结束。谢谢读完这篇接近 7000 字的长文🛰️ 27 。如果大家都“读懂空气” 28 ,今年也会和去年一样成为 TP100 成员们汇集优质音游文章的 Advent Calendar;请期待剩下 20 篇🛰️ 29 。
1 此 emoji 指 Pop'n Music 角色 Parabo;作者:Parabo 不可爱吗?
2 三个十六分音符的长度。
3 大约把三篇文章的内容硬压缩进了这篇。
4 想不到合适的 KSM 曲用来说明,只好自己做了很短的旋律;约五分钟完成的谜文件,当然没有曲名。
5 58577(原文保留的数字梗)。
6 不是 Dynamax。
7 同注 1 的 Parabo emoji 玩笑。
8 “updateTrigger”当然是ゴママヨ;作者称若需要背景可看该 Advent Calendar 第 2 天文章。
9 “附点八分长度”当然也是ゴママヨ(原文梗)。
10 激光反复挂リトリ,很快就可能满屏黄绿色,因此麻烦。
11 与官方博客内容相同,此处重述。
12
精确记法为
未判定 FX 长条时的参数>判定 FX 长条时的参数
,即
mix=0%>100%
;详见官方博客。
13 效果器名称已替换。
14 57575(原文数字梗)。
15 作者说也许这是本文最想说的一点。
16 我与楓さん做了旋钮谱,请玩玩看。
17 当然某游戏与 KSM 本无特别关系,也可以说无所谓;作者自己也不太在意。
18 575(原文数字梗)。
19
有人或许会猜想直接写
3/16=0.1875
:这部分行为很谜,
3/16=0.1875
可以应用,
3/8=0.375
却不行,声音还会莫名偏移;至少当时 ms 指定有用。
20 下句(原文的文字游戏)。
21 575(原文数字梗)。
22 三个八分音符的长度。
23 57577(原文数字梗)。
24 两行以上临时命令使用频率颇高,例如前述同时挂两个以上效果;希望 Editor 终有一天能直接编辑。
25 如果并非已知信息,对不起。
26 译注:沉下去。
27 同注 1 的 Parabo emoji 玩笑。
28 (?)
29 同注 1;作者还请读者若看到无高光眼睛、像他会喜欢的机械吉祥物,告诉他。