Unity开发 Photon Pun 多人游戏组件
大致原理:每個(gè)客戶端把自己的 相關(guān)數(shù)據(jù)(比如位置信息)傳到服務(wù)器;再由服務(wù)器同步到每一個(gè)客戶端里;
組件官方網(wǎng)站: https://www.photonengine.com/zh-CN/Photon
大致步驟
1、在官網(wǎng)創(chuàng)建賬戶;
2、在官網(wǎng) 創(chuàng)建應(yīng)用: Create new application
選擇類型 photon pun -》 輸入application’s name
創(chuàng)建成功后,可以看到應(yīng)用的存在,我們要注意 App ID 這串符號(hào),后面要用;
3、【可選項(xiàng)】申請(qǐng)國(guó)內(nèi)的站點(diǎn)服務(wù)
因?yàn)槟J(rèn)使用的是 國(guó)外的服務(wù)器,國(guó)內(nèi)訪問可能會(huì)慢一點(diǎn); 所以可以在中國(guó)區(qū)的官網(wǎng)申請(qǐng)中國(guó)光子云;
光子引擎連接: https://vibrantlink.com/
#1 申請(qǐng)光子云
填寫申請(qǐng)信息:注意app id 就是上面提到的id;
然后等郵件吧,工作日才會(huì)申請(qǐng)下來,周末可能放假了,我目前還沒有等到,555.。。。;
#2 修改配置
這里將放到 4 - #2里面講解; 因?yàn)橛泄庾釉?和沒有 光子云有些許區(qū)別;
4、創(chuàng)建Unity項(xiàng)目,搭建基本的框架:
#1 導(dǎo)入 photon pun2- 插件;在 assets store里面搜索下載導(dǎo)入;
ps: photon pun2+ 是pro版本,要付費(fèi), - 是免費(fèi)版本;
剛導(dǎo)入可能會(huì)有這個(gè)窗口,我們跳過,在 #2里進(jìn)行詳細(xì)配置;
#2 修改配置文件: 導(dǎo)入 photon之后,對(duì)配置文件進(jìn)行 些許配置
- 1、Photon -》 PhotonUnityNetworking -》 Resources: 找到 PhotonServerSettings; 直接搜這個(gè)文件也可以;
- 2、 申請(qǐng)了中國(guó)光子云的設(shè)置方法:
- a. 找到腳本 LoadBalancingClient.cs ;
修改 NameServerHost, 由 ns.exitgames.com 改為 ns.photonengine.cn;
- b. PhotonServerSettings 的 Fixed Region 設(shè)置為 cn;
- a. 找到腳本 LoadBalancingClient.cs ;
- 3、 正常的 設(shè)置 PhotonServerSettings文件
兩處: App id 就是上面反復(fù)提到的 id; App Version, 可以隨意設(shè)置,比如 1.0;
#3 寫腳本,搭建 框架
小demo:
-
1、創(chuàng)建 player 的預(yù)制體:
- a. 新建Cube; 添加一個(gè)腳本 : PlayerCubeController; 簡(jiǎn)單移動(dòng)邏輯
-
b.在 cube上 添加一個(gè) photon view組件; 這個(gè)組件是 告訴服務(wù)器 我要同步那些信息,下面舉例同步 位置信息 transform;
兩處修改: 1、 Observerable Serach : 改為Manual; 2、 把Transform組件拖到 Observed Components里面;
ps: 我們只能同步 指定的組件,如 transform、animator等等,具體可到官網(wǎng)查看; -
c. 將cube 設(shè)為預(yù)制體,但是要放到指定文件夾: Photon -> PhotonUnityNetworking -> Resources: 文件夾下面;
-
2、設(shè)置 聯(lián)網(wǎng) 信息:
- a. 創(chuàng)建空物體 PhotonManager, 掛在一個(gè)新建腳本 PhotonManager:
總結(jié)
以上是生活随笔為你收集整理的Unity开发 Photon Pun 多人游戏组件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 高效的敏捷测试第八课 静态测试工具和生成
- 下一篇: 计算机导论第七章数据库基础,计算机导论教