Unity Network初窥 内置的网络组件使用整理
2016-11-01 15:12
363 查看
版本:unity 5.3.4 语言:C#
这边主要参考了雨松大的文章(没找到原文,大家自己找找看看吧)。
听说现在Unity最新的版本已经用了一种新的网络组件,不过公司的项目都还是老项目,然后主程大让我看一下Network相关的内容,我正好把一些使用的方法整理一下。
首先这个方法:
Network.peerType
这个方法可以获取当前端的状态,一共有四种状态,一开始看可能有些茫然,但是分为服务端和客户端来看就好多了,首先是服务端:
对,就这两个状态,然后客户端就三个状态,其中未初始化的状态跟服务端重叠:
然后是服务端的初始化函数:
客户端的连接的函数:
最后是断开函数,不管是服务端或是客户端都可以使用,会回到Disconnected的状态:
如果客户端和服务端进行数据传输就要使用到RPC,相当于Socket注册回调的函数:
另一端可以通过以下方法进行调用:
需要注意的是在调用RPC函数的一端必须要有以下的组件NetworkView:
OK,今天就到这边为止。
这边主要参考了雨松大的文章(没找到原文,大家自己找找看看吧)。
听说现在Unity最新的版本已经用了一种新的网络组件,不过公司的项目都还是老项目,然后主程大让我看一下Network相关的内容,我正好把一些使用的方法整理一下。
首先这个方法:
Network.peerType
这个方法可以获取当前端的状态,一共有四种状态,一开始看可能有些茫然,但是分为服务端和客户端来看就好多了,首先是服务端:
NetworkPeerType.Disconnected: //服务端未初始化时 NetworkPeerType.Server: //初始化成功、开始监听后
对,就这两个状态,然后客户端就三个状态,其中未初始化的状态跟服务端重叠:
NetworkPeerType.Disconnected: //客户端未初始化 NetworkPeerType.Connecting: //客服端正在请求和服务端建立连接 NetworkPeerType.Client: //客户端跟服务端建立连接
然后是服务端的初始化函数:
// 服务端在10001端口进行监听,12为最大连接数量 NetworkConnectionError error = Network.InitializeServer(12, 10001, false); Network.connections.Length; //获取当前的连接数量
客户端的连接的函数:
NetworkConnectionError error = Network.Connect("127.0.0.1", 10001); //主动连接
最后是断开函数,不管是服务端或是客户端都可以使用,会回到Disconnected的状态:
Network.Disconnect();
如果客户端和服务端进行数据传输就要使用到RPC,相当于Socket注册回调的函数:
[RPC] void ReciveMessage(string msg, NetworkMessageInfo info) { message = "发送端" + info.sender + "消息" + msg + "时间" + info.timestamp + "网络视图" + info.networkView; }
另一端可以通过以下方法进行调用:
GetComponent<NetworkView>().RPC("ReciveMessage", RPCMode.All, message);
需要注意的是在调用RPC函数的一端必须要有以下的组件NetworkView:
OK,今天就到这边为止。
相关文章推荐
- unity network组件的使用
- 整理一下上传组件,方便日后使用
- 开发工具以及网络通讯使用的组件!
- Winodws Mobile 开发整理(2)- Emulator中使用PC中的网络
- const 在C C++ 中的使用 和 区别-----------整理自网络
- Using epoll() For Asynchronous Network Programming (使用epoll()进行异步网络编程)
- 网络经典命令行的使用和范例综合整理收集
- 使用 Web 高速缓存减少网络流量 / Reducing network traffic with Web caching
- 使用API判断网络是否连通(InternetGetConnectedState / IsNetworkAlive)
- 整理:[保留] [算法] 超高性能网络编程, Asynchronous network I/O
- [网络整理]DEBUG命令使用解析一
- FSO内置组件使用方法
- 网络经典命令行的使用和范例综合整理收集
- 使用API判断网络是否连通(InternetGetConnectedState / IsNetworkAlive)
- 整理:[保留] [算法] 超高性能网络编程, Asynchronous network I/O
- 网络经典命令行的使用和范例综合整理收集
- 使用IE内置组件实现web页面打印 --终于找到了
- [网络整理]DEBUG命令使用解析二
- 网络经典命令行的使用和范例综合整理收集
- iptables的概念及使用(网络搜索整理)