私は方法を見つけたと思うので、少なくとも私のために働いています。 NetworkClientクラスとNetworkServerクラスを使用して必要なのは可能です。だから私は2つの別々のプロジェクト、サーバーとクライアントがあります。 サーバーはかなりあるスクリプトを持っています
public class Server : MonoBehaviour {
public Text text;
public class HelloMessage : MessageBase
{
public string helloText;
}
void Start() {
NetworkServer.Listen(4444);
NetworkServer.RegisterHandler(333, onHelloMessage);
}
public void onHelloMessage(NetworkMessage msg)
{
text.text = msg.ReadMessage<HelloMessage>().helloText;
}
}
これは、ポート4444
上のメッセージをリッスンし、クライアント側はこのようなものです: パブリッククラスのNetworkManager:MonoBehaviour { NetworkClientクライアント。
public class HelloMessage : MessageBase
{
public string helloText;
}
// Use this for initialization
void Start() {
client = new NetworkClient();
client.Connect("127.0.0.1", 4444);
}
public void SendNetworkMessage()
{
HelloMessage msg = new HelloMessage();
msg.helloText = "Hello";
client.Send(333, msg);
}
}
今サーバー側で、私たちは、ボタンにラベルに、クライアント側SendNetworkMessage
にtext
をフックすることができますし、我々は、サーバー上で表示されるように、クライアントからメッセージを送信することができます。
これでプロトコルを定義し、オフにするだけです。
はい、UNET(Unityマルチプレイヤーサービス)を使用することもできますし、ユニティに公式ではない別のサービスを使用することもできます。 – Lestat
これは素晴らしいことです。このアプローチを開始するのに役立つリソースを教えてください。 –