2017年12月17日日曜日

オプション-負荷軽減

オプション-負荷軽減

負荷を下げるための設定

アスカ見参のゲームループ

普通は「内部処理→画面描画→次回処理時間待ち→内部処理」を繰り返すが、「次回処理時間待ち」の部分で、「次の時間になったか確認→次の時間になったか確認」を繰り返すだけの処理となっているようで「次回処理時間待ち」にも常にCPUを全力で使用し続ける作りになっています。
今どきのCPUコアの数が多いPCなら、一つが100%のままでも他があるので問題ないと言えますが、バッテリ稼働のPCの場合は無駄な負荷となるとバッテリの消費となるのであまり良くはないです。

描画毎にSleep

上記の仕様により負荷がかかるため、描画が終わった直後に固定のSleepを設定することで、CPUリソースを開放し負荷を下げる設定です。
ただしSleepの数値が多すぎる場合や、アスカ見参自体が重いときでもSleepするため、この設定のせいで、アスカ見参の処理が遅くなったり、間に合わなかった描画を飛ばされたり(カクカク)することもあります。
1フレームは1/60秒=16.66…ミリ秒ですので、17ミリ秒以上に設定すると1秒間に60回は絶対描画できなくなりますので16ミリ秒までしか設定はありません。
なおこの設定により、アスカ見参が遅くなる可能性はありますが、速くなることはありません。
バッテリ稼働ではない余裕のあるPCで実行する場合は、設定しないほうが処理落ちしにくいということになります。
ノートPCなどでは設定しておくべきかと思います。

0 件のコメント:

コメントを投稿