21. 独特的下落速度
本章我们将为音符中应用独特的下落速度。
独特的下落速度
独特的下落速度是节奏游戏中的另一个常见特征,其中每个音符可能以不同的速度下落。在某些游戏中,音符的下落速度由 BPM 决定,而在其他游戏中,它可以手动调整以产生奇特的效果。
在我们的引擎中,我们将采用基于 BPM 改变下落速度的方法。
目前所有音符的下落速度都相同,因为音符位置在最小和最大可视时间之间行进,并且最小可视时间简单地固定在最大可视时间之前的 1 秒。要改变下落速度,我们可以简单地改变下落时间。
假设我们希望 120 BPM 对应 1 秒的下落时间,并与 BPM 成反比(例如 240 BPM 对应于 0.5 秒的下落时间)
export class Note extends Archetype {
// ...
preprocess() {
// ...
this.visualTime.copyFrom(
Range.l
.mul(120 / bpmChanges.at(this.import.beat).bpm)
.add(timeScaleChanges.at(this.targetTime).scaledTime),
)
// ...
}
// ...
}
export class Note extends Archetype {
// ...
preprocess() {
// ...
this.visualTime.copyFrom(
Range.l
.mul(120 / bpmChanges.at(this.import.beat).bpm)
.add(timeScaleChanges.at(this.targetTime).scaledTime),
)
// ...
}
// ...
}