node.js
参照
大阪Node学園
七時限目 「ゼロからはじめるnode.js」
Unityでネットワーク通信をする(networkViewについて)
Network.Instantiate(objectPrefab, objectPrefab.transform.position,
objectPrefab.transform.rotation, 1);
Unityでネットワーク通信をする2(RPCについて)
RPC:ネットワークを超えて相手空間の関数を呼び出すしくみ
Network.Destroy()
Unityでネットワーク通信をする3
(インスタンス生成)
NetworkViewコンポーネント
Unityでネットワーク通信をする4
(C#でプログラミング)
Network.InitializeServer(10, int.Parse(port), false);
第1引数:受け入れるクライアントの最大数
第2引数:ポート番号
第3引数:NATを使用するか
Network.Connect(ip,
int.Parse(port) );
ネットワーククラスのConnectを呼び出し、
第1引数:サーバのIPアドレス
第2引数:ポート番号
Unityでネットワーク通信をする5
(動作を同期する)
networkView.isMineの真偽は「誰が作成したか?」によるものであり、自身がMasterかClientかは一切関係ありません。
if(networkView.isMine){
}
Unityでネットワーク通信をする6
(RPCで同期する)
RPCを使わないと、ネットワーク越しに関数を呼び出すことができない。
1. 関数呼び出しをRPCに対応したものにする
networkView.RPC("ToggleColor", RPCMode.All);
第2引数:関数呼び出しの影響範囲
All:すべての端末で関数が呼び出されます。
Others:自分以外のすべての端末で関数が呼び出されます。
Server:サーバの端末のみで関数が呼び出されます。
2. 呼び出す関数にRPCのプレフィックスを付ける
関数の頭に[RPC]のプレフィックスがついただけ
void ToggleColor(){
SpriteRenderer r = GetComponent<SpriteRenderer>();
r.color = ( r.color == Color.black ) ? Color.white : Color.black;
}
RPC
の詳細(本家マニュアル)