UDP 接続と TCP 接続の両方を使用して、Unity3D クライアントを Photon Server に接続する必要があります。出来ますか?それについてどこで読むことができますか?PS TCPを使用して大量のデータを送信したい。
3 に答える
Photon サーバーは複数のプロトコルを同時にサポートします。サーバー SDK をダウンロードした場合は、PhotonServer.config を探します。
このようなエントリが含まれています
<UDPListeners>
<UDPListener
IPAddress="0.0.0.0"
Port="5055">
</UDPListener>
</UDPListeners>
と
<TCPListeners>
<TCPListener
IPAddress="0.0.0.0"
Port="4530"
PolicyFile="Policy\assets\socket-policy.xml"
InactivityTimeout="10000"
>
</TCPListener>
</TCPListeners>
クライアントは、選択したプロトコルに関係なく、udp または tcp ごとに接続し、相互に対話できます。
構成オプションの完全なセットについては、こちらを参照してください: http://doc.exitgames.com/en/onpremise/current/reference/server-config-settings
クライアントが接続すると、サーバー側アプリケーションで、クライアントが次のように接続した方法を照会できます。
public class YourApplication : ApplicationBase
{
if (initRequest.LocalPort == 5055)
{
//
}
if (initRequest.PhotonPeer.GetListenerType() == ListenerType.TCPListener)
{
//
}
注: 構成内の UDPListener は、コード内で ListenerType.ENetListener として表されます。
サーバー SDK のドキュメントは、ダウンロードした {sdk}\doc\Photon.SocketServer.chm またはオンラインのhttp://doc-api.exitgames.com/en/onpremise/current/server/doc/annotated.htmlにあります。
簡単な答え: いいえ。フォトン サーバーは複数のタイプの接続を持つことはできません。ただし、「サーバー」の定義によっては、これを行う方法があります。この説明に基づいて、サーバーをマシン上で実行されているオブジェクト インスタンスと呼びましょう。サーバーが実行されているマシンをマシンと呼びます。1 台のマシンから複数のサーバーを実行して、さまざまな種類の接続を持つことができます。たとえば、Unity クライアントを UDP 接続を使用して物理サーバーに接続し、TCP 接続を使用して必要な他のものにクライアントを接続することができます。