一 網絡下載
可以使用WWW類下載資源
用法:以下載圖片爲例
WWW date = new WWW("<url>");
yield return date;
texture = date.texture;
注意函數的返回值類型爲IEnumerator,下載函數儘量使用StartCoroutine(function())協同程序。
對於本地資源,url爲"file://"+路徑,如果使用當前目錄,可以使用Application.dataPath
用這個方法同樣可以在線更新資源包。
二 創建本地服務器
網絡狀態可以通過NetworkpeerType的成員來獲取,狀態分爲四種,分別是:
NetworkPeerType.Disconnected 未開啓,在這裏編寫歡迎界面。
NetworkPeerType.Server 成功運行爲服務端,在這裏編寫服務器腳本。
NetworkPeerType.Client 成功運行爲客戶端
NetworkPeerType.Connecting 正在嘗試連接
一般使用switch來獲取狀態和處理事件。
在NetworkPeerType.Disconnected狀態下,可以使用Network.InitializeServer(maxconnect,Port,is_support_NAT);
第一個參數表示最大連接數,第二參數表示端口號,第三參數表示是否支持NAT(網絡地址轉換)方式連接
使用Network.Disconnected可以中斷連接。
三 創建客戶端
定義NetworkConnectionError類型的變量error接收Network的Connecte方法的返回值,如下:
NetworkConnectionError error = Network.Connect(IP, Port);
IP是服務器的地址
四 服務器響應
首先給服務器腳本所在組件(如主攝像機)添加Network View組件(在Miscellaneous類別內)。
網絡視圖組件用於系統使用RPC來接收網絡請求。
服務器部分:
聲明RPC接收函數的方法:
[RPC]
void RequestMessage(string message, NetworkMessageInfo info)
{
//message是消息內容
//info是附帶信息
如info.sender是發送者的編號
}
客戶端部分:
消息的發送函數:
networkView.RPC("RPC function name", option, message);
其中RPC function即爲剛纔創建的RequestMessage函數。
option一共有四種
RPCMode.Server 向服務器發送
.Others 向除發送者外發送
.OthersBuffered
.All 發送給所有人,包括自己
.AllBuffered
注:加上Buffered的含義是將數據添加到緩衝區
Unity3D學習筆記(四)Unity的網絡基礎(C#)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
搞搞, 超星爾雅;
sewerganger
2019-02-24 22:44:54
GNS3、VMware和物理機搭建網絡模擬環境(一)
lvqingpu
2019-02-24 13:15:35
對某網站的一次掃描及滲 透測試
qq5c6f4fa42f069
2019-02-24 12:58:23
綜合實驗的解決方案----目錄服務
zheng4918
2019-02-23 14:05:36
綜合實驗的解決方案----備份服務及其他
zheng4918
2019-02-23 14:05:35
vlan間路由的問題
白璐
2019-02-23 14:05:19
bat記錄遠程桌面連接登錄信息
jason1982
2019-02-24 12:57:09
Exchange Server 2010 POP3&IMAP設置詳解
lingping
2019-02-23 14:05:54
虛擬化技術--服務器虛擬化
dawei818
2019-02-23 14:05:39
windows 2008 全新仲裁模式
qyh282110204
2019-02-23 14:05:36
FX2LP 可以最簡單的Template Code
sychen0608
2020-12-12 19:41:50
C# 數字轉換成文字 十進位 ==> 二進位/十六進位
sychen0608
2020-12-12 19:17:09
【C#冷知識系列】(四)關於枚舉的冷知識
Charles吳
2019-02-24 12:56:05