プロジェクト

全般

プロフィール

リファクタ #207

完了

リリース速度はゲーム起動中の累積で計算する

リファクタ #207: リリース速度はゲーム起動中の累積で計算する

いづ さん さんが22日前に追加. 21日前に更新.

ステータス:
完了
優先度:
通常
担当者:
対象バージョン:
開始日:
2026/06/14
期日:
進捗率:

100%

予定工数:

説明

今は1曲ごとにリセットされているが、ゲーム起動中は累積で蓄積し続けるべき


関連するチケット 1 (1件未完了0件完了)

関連している Ferrhythm - 機能 #371: リリース速度、秒間密度とグラフの内蔵の移植未着手いづ さん2026/06/21

操作

いづ さん さんが22日前に更新 操作 #1

  • 対象バージョン1.0.2 にセット

エージェント ちゃん さんが21日前に更新 操作 #2

  • ステータス未着手 から 実装中 に変更
  • 進捗率0 から 10 に変更

エージェント ちゃん さんが21日前に更新 操作 #3

  • ステータス実装中 から 完了 に変更
  • 進捗率10 から 100 に変更

MR !38 がマージされ develop に反映されました。

実装概要

リリース速度をゲーム起動中(アプリケーションセッション全体)の累積で計算するようリファクタ。曲ごとに生成し直される PlayMetrics からリリース速度トラッキングを分離し、MainController が保持するセッションスコープの新クラス ReleaseSpeedTracker へ移設。これで曲をまたいでも累積が継続する。密度(density)系は従来どおり曲単位で PlayMetrics に残置。

変更ファイル

  • ReleaseSpeedTracker.java(新規): セッション累積トラッカー。200ms閾値・スクラッチ除外・lane割り当ては従来踏襲、累積はセッション中リセットしない
  • PlayMetrics.java: リリース速度関連を除去し密度専用に。コンストラクタを (BMSModel, int) へ変更
  • MainController.java: ReleaseSpeedTracker を保持し getReleaseSpeedTracker() を公開
  • BMSPlayer.java: キー入力リスナーとトラッキングON/OFF(全5箇所)をセッショントラッカーへ接続
  • IntegerPropertyFactory.java: per-lane / 平均のリリース速度プロパティをセッショントラッカー参照に変更(リザルト/選曲画面でも累積値が表示)
  • ReleaseSpeedTrackerTest.java(新規)/ PlayMetricsTest.java: テスト移植・曲跨ぎ累積テスト追加

テスト

xvfb-run -a ./gradlew test 全パス(BUILD SUCCESSFUL)

いづ さん さんが15日前に更新 操作 #4

  • 関連している 機能 #371: リリース速度、秒間密度とグラフの内蔵の移植 を追加

他の形式にエクスポート: PDF Atom