スポンサーサイト

--. . --
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

2つの速度変化

2007. . 02
途中変速と個別加速。
これらを同時に処理するにはどうすれば良いか。
前のブログにも書いたかもしれませんが、ひとまずここで振り返ってみる。
一つ目についてはすでに実装している方法です。
つまり、

・「途中変速」の場合には
 
矢印が300だけ進む時間を求めさせ、
その時間(フレーム)に矢印を出す。
(ただし、進む距離は必ずしも300ではなく、その前後)

・「個別加速」の場合には

途中変速の時間に応じ、
「矢印が(途中変速で)300だけ進む時間」と
「個別加速分の倍速」で出てくる座標を指定。
座標を変えて矢印を出します。

この場合、問題になるのはフリーズアロー。
途中変速に特化したソースならば、
そのために長さを調整しなくてはいけません。

・ ・ ・

二つ目の方法は、どちらも距離300で済ませる方法です。
前者に関しては問題ないです。
後者も、どんどん加速する譜面であれば無問題。

問題が発生するのは、矢印の「追い抜き」。
一つ目の方法ならば、出てくる順序にステップしますが、
この方法だと、追い抜きによって速度の設定が複雑になってしまいます。


例えば、2倍速から個別加速で0.5倍速にしたとします。
距離300だけ進むのに、
2倍速なら75フレーム(= 300 / 4)で十分です。
が、0.5倍速だと300フレーム(= 300 / 1)もかかってしまいます。

連続的に配置する場合、0.5倍速の矢印は
2倍速の矢印よりもっと早く出現させる必要があります。
ここで追い抜きが発生する、というわけです。


・ ・ ・

ここで今のソースについて。
今のソースは、5keyも7keyもこんな感じで矢印を出しています。

mkArrow[520] = [1,6];

例えばこの場合は、
520フレームになったら左から2番目、7番目の矢印を出せ、
ということで、520フレームに左斜めと右矢印が出ます。

今後やろうとしていることは、
これを利用して速度変化の境目の処理を入れること、
後は判定処理の番号の振り分けの工夫、といったところ。
最悪、矢印に個別加速部分の情報を入れる方法でも良いのですが、
処理量の問題が・・・(汗
スポンサーサイト

comment

post comment

  • comment
  • secret
  • 管理者にだけ表示を許可する

trackback

trackbackURL:http://alprime.blog91.fc2.com/tb.php/4-7fb5da61
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。