Skip to content

fix: GUIバックグラウンド時もシミュレーション継続#13

Merged
HansRobo merged 1 commit intomasterfrom
fix/gui_fore
Feb 8, 2026
Merged

fix: GUIバックグラウンド時もシミュレーション継続#13
HansRobo merged 1 commit intomasterfrom
fix/gui_fore

Conversation

@HansRobo
Copy link
Member

@HansRobo HansRobo commented Feb 8, 2026

概要

GUIがバックグラウンドや最小化状態になった場合でも、シミュレーションを継続するように改善しました。

問題点

これまで、GUIウィンドウがバックグラウンドになると、シミュレーションの更新が停止していました。これにより、他のアプリケーション作業中もシミュレーションを継続させたい場合に不便でした。

実装内容

1. アプリケーション状態の監視

  • QApplication::applicationState() でアプリケーションのアクティブ状態を判定
  • バックグラウンド時は描画を無効化しつつ、シミュレーション更新(step())は継続

2. タイマー精度の向上

  • メインタイマーに Qt::PreciseTimer を設定し、より正確な更新間隔を実現

3. 描画制御ロジックの整理

  • アクティブ状態、GL有効化、設定編集中の状態を考慮した条件分岐を整理
  • バックグラウンド時:グラフィックス無効化 + シミュレーション継続
  • フォアグラウンド時:通常の描画 + シミュレーション

4. getViewpoint() の修正

  • graphicDisabled チェックを削除し、常にビューポイント情報を取得可能に

@HansRobo HansRobo merged commit 295208b into master Feb 8, 2026
2 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant