updateTrigger
译注:KSM 谱面制作者 Мороже 的技术文。此篇承接 ① rate 与 updatePeriod 。 原文
早上好,我是 TapeStop100 的 Мороже🛰️。本文是昨天文章的续篇;还没读过的请先读前篇。今天继续用实例讲 KSM Retrigger 的参数,重点是
updateTrigger
。
updatePeriod
上一回讲得颇粗略,这里严谨一点。把 Retrigger 为重复而取用的声音
区间
称为“样本”;样本起点称为
updateTrigger
,更新该起点的间隔称为
updatePeriod
1
。默认 Retrigger 的
updateTrigger
先在谱面开头,然后按
updatePeriod
指定的周期重新更新。
例如有一个八分音符长度的 Retrigger:它会取从已经出现过、距离当前最近的
updateTrigger
开始的样本,并重复该样本最开始的八分音符区间
2
。文字不易说明,所以我准备了图帮助直觉理解
3
;左上有空白太寂寞,便画了个炸弹兵。
实际挂右侧两行效果器的结果如下:
updateTrigger
updateTrigger
其实可手动修改(方法后述)。利用此点,便能从有
updateTrigger
的位置取音,在喜欢的位置重复。例如修改名为
free
的效果器的
updateTrigger
;黄绿色线是更新线:
如果连续采样人声,会变成很强的玩梗效果。
顺带一提,民间流行一种“把按下瞬间作为
updateTrigger
更新线”的效果
R
;我
强烈不推荐
。它表面便利,但是真的会在玩家
按下的瞬间
更新,所以声音受玩家何时按键支配;稍微偏一点就常常响出并非设计者本意的声音。官方博客也写过,却还广为流传;正因这些缺点,应该废除。请绝对不要用。
updateTrigger
接下来说明手动改动方式。若要修改定义效果器
free
的
updateTrigger
,先把它的
updatePeriod
设为
0
,然后在文本编辑器中、希望放置的位置写入
fx:free:updateTrigger=on
:
#define_fx free type=Retrigger;updatePeriod=0;rate=100%
但在文本编辑器里找准确位置几乎不可能,所以借助编辑器的替换功能。 补记: K-Shoot Mania 更新后,可在工具栏“工具”→“启用通过注释直接编辑谱面文件”中轻松写入(重载后生效);以下是旧版操作。
fx:free:updateTrigger=on
,并用 Editor 覆盖保存。
//
批量替换为空字符串
4
,然后保存。
下面录下了实际步骤。熟练后很快,大家尽管编辑
updateTrigger
:
这不是我的谱面,但利用目前的知识可以挂出这样的效果。扩展 Retrigger 很强,基本什么都能做:
这是 Effectors Challenge 2 的《もぺもぺ[peace]》差分谱面;大量使用扩展效果器,很有意思,推荐观看。
两天里我热情地谈了 Retrigger。使用本文介绍的用户定义效果器,可以相当自由地使用リトリ。还没讲到的东西不少(像 Disconnect 那种“ドゥルルドゥルルッ”式效果、同时按两条 FX 的行为),留待下次。祝大家有美好的效果器生活!
追记: 两年后续篇已经发布: ③ 用用户定义 Retrigger 操控附点八分 。
1
实际上它不是样本
长度
,而是“从小节开头开始,每隔 x 小节重放置一次
updateTrigger
”的规格。比如在小节开头过 1/4 处放一次,然后想从那里每 1/2 小节更新、写
updatePeriod=1/2
,不会按预期工作;它仍会在从小节开头过 1/2 处放置。
2
与其说“此前看过”,不如说必须实际播放:从曲首到曲尾的过程中实时取样。因此在
updateTrigger
后的部分播放时,取样来源区间尚不存在,会响出别的声音。
3 我觉得图相当易懂;需要解释时请随意贴出使用。
4
注释在内部被当作以
//
开头的字符串。