重写UNET

序言

Unity联网的方式有很多种,出名的有UNET(Unity自己家的,我看发展蓝图里面好像要改版,把一些API去掉用其他的代替)、Photon(第三方插件,很牛逼,支持互联网),今天我给大家说说怎么重写UNET,当然不是完全重写,是重写部分方法。废话不多说,赶紧来看。

UNET框架

网上已经有很多例子和入门教程了,我在这里不再赘述了,我就直接说说重写的部分。重写的话主要是针对NetworkLobbyManager和NetworkManager两大组件来重写的。

NetworkLobbyManager

这个组件是一个控制由大厅到正式游戏的组件,大厅什么意思呢?类似于魔兽争霸和红警里面的建房间,首先有一个主机建房间,然后其他玩家才能加入,加入以后点准备,所有玩家准备好了才能正式开始游戏。AssetStore里面的例子,都是服务端和客户端一样的,进了游戏以后选择你是服务端还是客户端,这次我为大家弄一个不一样的,服务器和客户端的逻辑完全不同,但可以相互通信。先来看下我们要重写的NetworkLobbyManager的主要函数:

Server部分

public void OnStartServer();服务器一开始的时候执行
public GameObject OnLobbyServerCreateLobbyPlayer(NetworkConnection conn, short playerControllerId);创建好大厅后,返回要创建的玩家预制体
public void OnServerDisconnect(NetworkConnection conn);当客户端断开连接的时候

Client部分

public void OnClientConnect(NetworkConnection conn);客户端连接到服务器的时候执行
public void OnClientDisconnect(NetworkConnection conn);客户端断开的时候执行

以上两部分,虽然都是在同一个组件里,但是会在不同的端执行,Server部分的函数就在服务器执行,Client部分的函数就在客户端执行。

第一步 搭建初始UI

这一步请参考我的另一篇文章UI框架

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值