C#でフォームアプリケーションを開発しています。
普段趣味でゲームしている最中そのアプリケーションをバックグラウンドで実行しているのですが、
アプリケーションを実行中と実行してないときでゲームのFPSが80fpsから60fpsまで落ちます。
CPU使用率を確認しても35%から41%、メモリの使用量はほぼ変わっていませんでした。
考えられる原因は何でしょうか?
よろしくお願いいたします。
> 考えられる原因は何でしょうか?
「そのアプリケーションをバックグラウンドで実行」によって PC のリソースが消費されているから・・・ぐらいしか答えられる人はいないと思うのですが???? ピンポイントでアプリの何が影響しているか答えられる回答者がいたら、たぶんその人はエスパー
ありがとうございます。
CPUが100%振り切っていないため問題ないと思っていたのですが、リソースを消費するとFPSは落ちるのでしょうか?
> CPUが100%振り切っていないため問題ないと思っていたのですが、
どうしてそう思うのですか? リソースは限られているのですからそれを共有すれば何らかの影響は必ずあるはずだと思いませんか?
fps が落ちることで CPU の使用率が変わってない結果が得られるんじゃないですかね。
詳しく調べようと思えば、環境を変えても再現するかどうかというところの調査も必要になるでしょうが、単純にゲームをする時にはそのアプリを使うのをやめるか、もしくはより高速なマシンを使えば解決だと思います。
なお、SPY++ を見ればわかりますが、Windows フォームアプリ(フォームアプリにも複数の種類があるので、Windows をつけないと正確に伝わりません)にはウィンドウが多数使われており、それぞれが多数のメッセージを処理しています。
その反省から WPF ではウィンドウを極力使わないようにしているので、パフォーマンスが重要な場合は WPF を選択することで改善する可能性があります。