LoginSignup
3
2

More than 5 years have passed since last update.

UnityのNetworkViewで複数のシーンをリアルタイム連携

Posted at

スクリーンショット 2014-09-18 18.46.40.png

1つのシーンと同じ動きを複数のシーンで管理する場合に
NetworkViewを使うのが便利です。

やりたいことは
カメラを上下に動かしてカメラの動きを複数のシーンへ連携させる。
http://youtu.be/beyzL0q8C8c
※大和ちゃんを提供してくれたのは、pixiv絵師の澪りりさん。
かわいい絵をありがとう!
http://www.pixiv.net/member.php?id=5061172

NetworkViewは、以下のようにComponentから追加できます。
動きを連携させたいオブジェクトに追加しましょう。
スクリーンショット 2014-09-18 18.59.10.png

次に、ローカルIP(127.0.01)指定で接続する為にスクリプトを
ちょこっと書きます。

NetworkMenu
using UnityEngine;
using System.Collections;

public class NetworkMenu : MonoBehaviour
{

    public string connectionIP =  "127.0.0.1";
    public int portNumber =  8632;
    private bool connected = false;

    private void OnConnectedToServer()
    {
        connected = true;
    }

    private void OnServerInitialized()
    {
        connected = true;
    }

    private void OnDisconnectedFromServer()
    {
        connected = false;
    }

    private void OnGUI()
    {
        if (!connected) {
            connectionIP = GUILayout.TextField (connectionIP);

        int.TryParse (GUILayout.TextField (portNumber.ToString ()), out portNumber);

            if (GUILayout.Button ("Connect")){
                Network.Connect (connectionIP, portNumber);
            }
            if (GUILayout.Button ("Host")){
                Network.InitializeServer (4, portNumber, true); 

            }
        } else {
            GUILayout.Label("connections:" + Network.connections.Length.ToString ());
        }
    }

}

こんな感じ。
スクリーンショット 2014-09-18 19.02.33.png

ポート番号は、参考にした動画に準じました。
使われてなければ、7000でも8000でも問題ないです。

実行の際は、制御したい方をHOST、受け取りたい方をConnectにして下さい。

やっぱりUnityは簡単で便利だなあー。

※これは、カメラの動きようのスクリプト
```C#:MoveCam
using UnityEngine;
using System.Collections;

public class MoveCam : MonoBehaviour {

// Update is called once per frame
void Update () {
    if (Input.GetKey(KeyCode.UpArrow))
    {
        this.transform.position += new Vector3(0, 1, 0);
    }

    if (Input.GetKey(KeyCode.DownArrow))
    {
        this.transform.position -= new Vector3(0, 1, 0);
    }
}

}
```

以下の動画をNetworkViewの参考にしました。
すごくわかりやすいです。
http://www.youtube.com/watch?v=jjOe5dNOI34

※公式の参考
http://docs-jp.unity3d.com/Documentation/Components/class-NetworkView.html

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2