作者tarrytu (LASK)
看板GameDesign
标题Re: [请益] 下落式节奏游戏的变速效果
时间Wed Jul 28 22:31:11 2021
※ 引述《joe820730 (Let it go)》之铭言:
: 以上的方法很好处理,而且可以在一些趣味性质的谱面设计一些超高速的Note来搞初见杀
: 但是如果要做到整个谱面瞬间停止的效果我就没想法了
: 所谓的瞬间停止可以参考:https://youtu.be/nNDqedR2qq4?t=73
没想到有一天会看到自家游戏在版上被cue,手痒忍不住来回一下XD。
上面aegis123321大回的那一篇和Lanota的实作方式非常相似,我就补充一下实作细节。
实作方法就是使用绝对位置相减来求判定点与Note的相对位置,
而非试图直接求相对位置,这样有助於简化问题。
若令时间->绝对位置函数为Pos(t),则相对位置NPOS可以表示成
NPOS = Pos(NT)-Pos(CT)
这样做的好处是Pos(t)实作可以非常单纯,
做法就是在谱面中纪录一个带有时间点的变速表(如:3秒时变2倍快),
方便建立时间->速度函数,我们先叫他Speed(t),
那麽Pos(t)就只是将Speed(t)积分起来而已,实际上Speed(t)看起来会像是长条图,
所以积分也就只是算长方形面积累加而已,程式上一个for回圈就搞定了。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.136.179.236 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/GameDesign/M.1627482673.A.E11.html
1F:推 joe820730: 居然召唤出原作者让我吓了一跳XD 07/29 00:56
2F:→ joe820730: 在我一开始的文章中有些细节其实我漏掉了 07/29 00:57
3F:→ joe820730: 其实我目前的公式就是aegis123321大大所写的那样 07/29 00:59
4F:→ joe820730: 只不过我程式里是写成NPOS=(NT-CT) * X * SPEED 07/29 01:01
5F:→ joe820730: 其实就是把公式给简化了,但概念上应该是一样的 07/29 01:01
6F:→ joe820730: 喔天啊,我终於想通了,所以我打从一开始把整条谱面当 07/29 01:08
7F:→ joe820730: 成一个输送带的概念就错了... 07/29 01:08
8F:→ joe820730: 要做到变速效果反而不能把公式化简 07/29 01:11
9F:推 wulouise: 你可以追加各自note的速度,这样旧的不用改很多(吧 08/01 14:36