1

JavaFX (2) が、構築しようとしているゲーム プラットフォームに適した UI ツールキットであるかどうかを判断する必要があります。ゲームは単純な 2D ゲームであり、それほど凝ったものではありませんが、ユーザー エクスペリエンスのためには、ゲームが「滑らか」に見えることが重要です。

現在、単純なテスト アプリケーション (ImageView 内のいくつかのスプライトを移動する) によって示されるフレーム レートについて、いくつかの懸念があります。

  • メイン モニターでアプリケーションを実行しているときに、2 番目のモニターでマウスを使って何かを行うと、アプリケーションの滑らかさが著しく低下します。これが数秒間続き、その後通常に戻ります。
  • アプリケーションは、メイン モニターと同じレベルの滑らかさをセカンド モニターで達成することはありません。
  • これは、人間の目に見えるフレーム レートの違いに関するものであることに注意してください。なんらかの理由で、内部フレーム レート (PerformanceTracker.getAverageFPS()または JavaFX Balls デモ アプリケーションによって報告される) が下がらない (実際、報告される数値は数フレーム分上昇することさえあります: 通常、アニメーションが報告された fps は ~131 です)。とありjavafx.animation.fullspeed=trueます。
  • バックグラウンドで Flash アニメーションを開いていると、CPU が競合していなくても (私の CPU は約 30 ~ 40% 使用されています)、JavaFX アプリケーションはスムーズなアニメーションを実現しません。この場合、報告されたフレーム レートは実際には低くなりますが、CPU が最大に達していないのにフレーム レートが低下するのはなぜですか?

この貧弱なパフォーマンスがどこから来たのか、誰にも分かりますか? それはプラットフォームの未熟さですか、それとも固有の制限ですか? JavaFX は (単純な 2D) ゲーム プラットフォームの基盤として不十分であり、OpenGL アクセラレーションを使用して C++ にドロップダウンする以外に解決策はありませんか?

4

1 に答える 1