Learn · modules

エンジン冷却液とは Minecraft?

AntiFreezeは、チャンクの読み込みが多い時やサーバーのラグが発生した際に、Minecraftクライアントがフリーズするのを防ぎます。パケット、ヒット登録、移動といった要素には一切影響を与えません.

TRtrolPublished 1 min read

MinecraftにおけるAntiFreezeとは?

AntiFreezeは、通常、レンダーのスレッドを詰まらせる瞬間にゲームがフリーズするのを防ぐために作られたMinecraftクライアントモジュールです。大量の新しいチャンクがストリーミングされる場合や、サーバーからの応答を待機している間にラグが発生した場合などです。ウィンドウが一時的に応答しなくなる(あるいは5秒間など)代わりに、このモジュールは、処理が滞ってもレンダリングと入力を維持します。これは戦闘ツールでも、移動ツールでもありません。パイプラインのどこかで問題が発生している間、ゲームをプレイ可能に保つためのものです。

仕組み

AntiFreezeは、クライアントがフリーズしやすい特定の瞬間を監視します。大量のチャンクが同時に読み込まれる場合や、サーバーが遅延し、クライアントが待機しているデータを遅らせる場合などです。通常、この種の負荷はメインのゲームスレッドをブロックし、ブロックされたメインスレッドはウィンドウのフリーズ、レンダリングの停止、入力の停止を意味します。作業が完了するまで、ウィンドウはフリーズしたままになります。

AntiFreezeは、そのようなブロックが発生するのを防ぎ、処理が滞ってもクライアントのレンダリングと入力ループを維持します。AntiFreezeが解決するフリーズは、過剰な処理の局所的な症状であり、ネットワークやゲームプレイのメカニズムではありません。そのため、修正にはサーバーが見ることができるものを変更する必要はありません。ワールドの状態、ヒット登録、クライアントから送信されるパケットは一切変更されません。これは、エンジンが追いつく間、ウィンドウが応答性を維持することだけを目的としています.

それも、プレイヤーが特定の状況でのみ切り替えるのではなく、常にオンにしてしまう理由を説明します。ほんの一瞬ゲームが止まってしまったためにジャンプに失敗したり、チャットでメッセージを落としたり、戦いのまさにその瞬間にスタッターが発生したりといったことは、どうにもできません。それは意図的に使う機能というよりも、安定性パッチに近いものです。

バニラMinecraftでフリーズが起こる理由

Minecraftクライアントのメインスレッドは、レンダリング、入力、ネットワーク処理を担当しています。これらのいずれかが遅延すると——巨大なチャンクの読み込み、ネットワークの不具合、またはサーバー側のラグスパイク——スレッドが停止します。ウィンドウは描画され続けますが、クリックやキー入力などには反応しません。プレイヤーの視点から見ると、ゲームがフリーズしているように感じられます。競技性の高いプレイでは、それは死につながります。

AntiFreezeは、これらの処理を分離することで、1つが遅延しても、他の処理は実行され続けるようにします。レンダースレッドは稼働を維持し、入力は処理され、ゲームはプレイ可能です。その下にあるシステムが苦戦していても。

使うのは安全か

アンチフリーズは、ローカルクライアントが負荷下でレンダリングと入力を処理する方法だけを変更します。異なるパケットを送信したり、ヒット登録に影響を与えたり、サーバーや他のプレイヤーが観測できるものを変更したりすることはありません。サーバーは「クライアントがスムーズに感じた」という情報を自身に報告するチャンネルを持っておらず、したがって、アンチチートがチェックするべき信号も存在しません。機能的には、他のクライアントサイドのパフォーマンスやQOLツールと同じカテゴリに分類され、サーバーが受信するものを実際に変更する戦闘や移動モジュールとは全く関係ありません.

よくある質問