2017-06-19 5 views
2

私は基本的なネットワークシーン(2人のプレイヤー変換と時折のRPC)に対して一定のUNetドロップアウトを得ています。タイムアウトにより接続が切断されます。UNet randomly disconnects

接続は確実に5分以内に、ほとんどが30秒以内に確実に終了します。私はUNetがこれを多くしているということをオンラインで読んだ。 NetworkDropThresholdOverflowDropThresholdを最大90%まで増やしてみました。また、pingのタイムアウトを5秒に設定しました。

修正方法に関するご意見はありますか?私は両方のプレーヤーにWi-Fiを使用しています。Unity 5.6.0f3を使用しています。

+0

私は何を試しましたか?私はそれが助けられたかどうかを知りたい。 – Programmer

+0

今問題を再現できないと思いますか? :) Unity 5.6.1にアップグレードしましたが、私はまだドロップがありませんでした。 –

答えて

0

Unity 5.6.1f1へのアップグレードでこれらの問題が修正されました。リリースノートや、5.6.0シリーズのパッチノートにはコメントはありませんが、少なくとも私にとっては信頼性の差が驚異的でした。

問題が発生している場合は、最新のバージョンをお試しください。最新の安定版リリースが私のために働いていましたが、最新のパッチリリースはhttps://unity3d.com/unity/qa/patch-releasesにあります。


あなたはユニティの仲人を使用している場合は、選手を蹴るハード帯域幅の制限がある光子サンダーは、マッチメイキングやリレーのドロップイン置換である(そして、それは高価です!):https://www.photonengine.com/Thunder

2

NetworkDropThresholdと OverflowDropThresholdを最大90%まで上げようとしました。また、pingのタイムアウトを最大5 秒に設定しました。

これは実際に大きな問題で、1年以上にわたって修正されていません。残念ながら、あなたはまだすべてを試していません。切断率を修正したり減らしたりできるものはほとんどありません。

NetworkManager.maxDelayを約0.2fに増やします。ドキュメントによれば、デフォルト値は0.01fです。切断を中止するまで、増やしてください。


Unetのマッチメイキングシステムを使用している場合は、転送レートに制限があるため問題になる可能性があります。この制限を超えた場合、切断されます。残念なことに、それに対する解決策は、あなた自身のマッチメイキングを作ることです。

+0

うわー、それはそれが長い間問題だったのは驚くべきことです!私は5.6.0(5.6.1から)にロールバックし、直ちにドロップを再び開始しました。 'maxDelay'を0.2に設定しようとしましたが、残念ながらそれはまったく役に立たなかった...私は5.6.1を続けて、安定した長期的な状態を維持し、報告するようにします。 (指が交差した!) –

+1

数日後に報告してください。私は5.6.1が実際にこれを修正したかどうか知りたい。 – Programmer

+0

多くのテストの後、これらの問題が修正されたように思えます - 私にとっては、少なくとも - 5.6.1。私はドロップなしで1〜4時間のセッションを行っています。デバッグインスペクタを見ると、 'NetworkManager'のデフォルトの設定値が変更されていないようです。私はUnityがいくつかのバグを修正したと思う。 –

関連する問題