サンブルプログラミングの館にある、太鼓の鉄人の性能を
高めるには、さらにどんな処理を追加したらいいでしょうか。
注 あくまで性能の話であって、機能や描画項目の追加ではありません。
例 微妙なずれをなくすために...
FPSのエラーをなくすために...
太鼓の鉄人の性能を高めよう!
Re:太鼓の鉄人の性能を高めよう!
>FPSのエラーをなくすために
機能の追加、というよりかは書き直しに近いかもしれませんが、
根本的に(再生情報などによる)時間ベースで判定・表示をするようにして
fpsに依存しない作りにするのはどうでしょう。
全てが時間ベースで作られていれば、fpsのずれでシークする必要がなくなるので、
fpsエラーそのものが発生しません。
とはいえ、あまりにも fpsが低くなると絵とタイミングをとることが
むずかしくなるので、そのような状態でも遊べるように、とか考えるなら
内部処理の更新(入力判定など)だけは 30~60fps程度で非同期で行う必要が
あるかもしれません。
>微妙なずれをなくすために
何度もプレイして調整するしかないような気がします。
Re:太鼓の鉄人の性能を高めよう!
音ゲーは「時間」「タイミング」が命ですから、フレームで計算する処理は適切ではないかもしれません。
ただ時間で計算すると途端に処理がめんどくさくなるんですよね・・。
私は音楽と同期させる処理をするときは
発想を逆にして「処理落ちしたら音楽の再生位置を調整する」という風にしています。
つまり音楽に合わせて処理をするのではなく、処理に合わせて音楽を再生します。
ただ、そうすると処理落ちした時に音楽の再生の仕方がおかしくなるので、お勧めはできません。
>>微妙なずれをなくすために
>何度もプレイして調整するしかないような気がします。
以前Justyさんが仰っていた
「音楽の再生スピードを半分にして調整する」という方法、これかなり使えますよね。
あれ以来結構この方法重宝させていただいています。
もっと本格的に作りたいなら音楽と同期して譜面データを作る作成支援ツールを作ってもいいかもしれませんね。
ただ時間で計算すると途端に処理がめんどくさくなるんですよね・・。
私は音楽と同期させる処理をするときは
発想を逆にして「処理落ちしたら音楽の再生位置を調整する」という風にしています。
つまり音楽に合わせて処理をするのではなく、処理に合わせて音楽を再生します。
ただ、そうすると処理落ちした時に音楽の再生の仕方がおかしくなるので、お勧めはできません。
>>微妙なずれをなくすために
>何度もプレイして調整するしかないような気がします。
以前Justyさんが仰っていた
「音楽の再生スピードを半分にして調整する」という方法、これかなり使えますよね。
あれ以来結構この方法重宝させていただいています。
もっと本格的に作りたいなら音楽と同期して譜面データを作る作成支援ツールを作ってもいいかもしれませんね。
Re:太鼓の鉄人の性能を高めよう!
>>微妙なずれをなくすために
>「音楽の再生スピードを半分にして調整する」という方法
あー、そっか。そっちのずれもあるんですね。
私はタイミングデータは正確なことが前提で、画面上のボックスと弾の判定で、
指がキーを押す動作を始めてから内部的にキーが押された判定が行われるまでの
微妙なラグだとばかり思ってましたw
データの方のずれに関しては、ある程度正しくタイミングがとれているデータを
頑張って作った上でタイミングの最小限単位(分解能)を決めて後からクォンタイズをかければ
綺麗にデータがそろいます。
まさに MIDIのリアルタイムレコーディングしたあとの処理と同じ方法ですね。
クォンタイズ(Quantize)|DTM用語集 01SoundEarth
ttp://word.01sound-earth.com/dtm_ka/quantize.php
これでも元データによっては完全とはいかないこともあるでしょうけど、
ずれをなくす方法としては有りかなと思います。