コミュニティアイコン プチコン 非公式コミュニティ プレイ日記

アバター
ジプッチャ ◆tkYhkmSxSAam
2019/6/23 14:51
メトロノーム製作中。
BPMが120とか180とかの時はいいが、半端な時の誤差の処理が意外と難しい。

60フレームとBPM60の1拍は完全に同じではない気がする。
後者の方が短いようです(ざっと調べると0.997倍くらい?)。何故?

コメント

アバター
あまさとしおん 2019/6/23 16:49 ◆mzDKTVUAtwqE
VSYNC 1の長さは、正確には1/60秒ではなく約1/59.83...秒なんだそうです
(3号による調査の情報、実は温度とかで微妙に変わるらしい)
4だとちょっと値が違うかもしれませんが、「秒とはうまくかみ合わない」ということは同じっぽいです

秒による処理をやりたい場合MILLISEC()を使うほうが安全です
※なお、3号/BIGだとカッコがつかない
アバター
KNTK 2019/6/23 19:35 ◆.O1reuuyjCCS
MML内部変数BGMVARを使うのはどうでしょうか...。
(内部変数は音ゲー製作には欠かせないですね)
アバター
ジプッチャ 2019/6/24 16:52 ◆tkYhkmSxSAam
やはり仕様だったんですね!
MILLISECとBGMVARのどちらが合っているかじっくり考えてみます。
情報ありがとうございました。
アバター
あまさとしおん 2019/6/24 19:39 ◆mzDKTVUAtwqE
>>MILLISECとBGMVARのどちらが合っているかじっくり考えてみます。


ええ(困惑
BGMVARには時間を計測する機能はありませんよ?


MILLISECは1秒ごとに1000ずつ増える変数(4なら関数)です。
時間を正確にはかりたいときに使います。
(ゲーム機の時計機能と同じだけ正確)
アバター
KNTK 2019/6/24 20:12 ◆.O1reuuyjCCS
トラック0のMMLにて"T120 [0$=0 R16 0$=1 R16]"をPLAYして
BGMVAR(0,0)の値の変化を調べればいいのではないかということです。
(時間を計るというより拍のタイミングを調べるといった方が適切だったかもしれない)
アバター
ジプッチャ 2019/6/24 20:19 ◆tkYhkmSxSAam
あまさとしおんさん≫
あ、そういうことではなく。
BGMがサビに入った瞬間にMML内部変数を変えて、それで背景色を変えたり譜面の流れる速度を変えたりしたら感じが出たりするかなーとか一瞬考えましたが、
別にMMLに埋め込む利点はないのとMILLISECでやったほうが正確なのでそちらに落ち着きました。
アバター
あまさとしおん 2019/6/25 14:58 ◆mzDKTVUAtwqE
あっ
なるほど、分かりました

コメントを書く

  • こちらは「プチコン3号」「プチコンBIG」など、プチコンシリーズに関する話題を扱ったコミュニティです
  • プチコンシリーズにまったく関係ない書き込みはご遠慮下さい。削除の対象となります
  • こちらにはその他のゲームや雑談のコミュニティはなく、作る予定もありません (ひとりで管理できないため)。ごめんなさい
  • ユーザー登録なしで書き込みができます
  • 秘密の合い言葉は成りすましの防止 (トリップ機能)、書き込みの編集時の本人認証に使用します
  • 秘密の合い言葉に他人に推測されやすい言葉、他サービスと同じパスワードは入力しないでください。
  • 書き込むと、投稿時に入力したお名前と秘密の暗号が記憶され、ログイン状態になります

- WEB PATIO -