作者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://www.ptt.cc/bbs/GameDesign/M.1627482673.A.E11.html
推 joe820730: 居然召喚出原作者讓我嚇了一跳XD 07/29 00:56
→ joe820730: 在我一開始的文章中有些細節其實我漏掉了 07/29 00:57
→ joe820730: 其實我目前的公式就是aegis123321大大所寫的那樣 07/29 00:59
→ joe820730: 只不過我程式裡是寫成NPOS=(NT-CT) * X * SPEED 07/29 01:01
→ joe820730: 其實就是把公式給簡化了,但概念上應該是一樣的 07/29 01:01
→ joe820730: 喔天啊,我終於想通了,所以我打從一開始把整條譜面當 07/29 01:08
→ joe820730: 成一個輸送帶的概念就錯了... 07/29 01:08
→ joe820730: 要做到變速效果反而不能把公式化簡 07/29 01:11
推 wulouise: 你可以追加各自note的速度,這樣舊的不用改很多(吧 08/01 14:36