栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > 其他

UnityMirror学习笔记(1):安装与简单使用

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

UnityMirror学习笔记(1):安装与简单使用

Mirror是一个简单高效的开源的Unity多人游戏网络框架。
在这里按照油管dalao的教学流程,与官方文档学习常用的API及操作。

https://mirror-networking.gitbook.io/docs

安装

Mirror在Unity商店中是免费的,因此直接加入自己的资源库并在导入即可:

导入后需要调整一下项目的.net版本:
Project Settings - Player - Other Settings - Configuration - Api Compatibility Level至.NET 4.x

使用

可能需要重启一下Unity,这样在ADD Component时才能看到相关组件。

创建场景的网络管理器

一个场景需要一个物件做总的网络数据传输与管理:

在这个物件上挂载NetworkManager,KcpTransport,NetworkManagerHUD。
前两个是网络管理与传输的核心,我们可以暂且称之为网络中枢。
最后一个用来帮助我们方便地管理多人游戏各个同步的场景中,
哪一个用户的场景是主机,(进行状态同步)
或者是没有玩家进行游玩的服务器,(进行云服务器帧同步)
或者是非主机的玩家场景。

BTW,同步的意思就是保证多人游戏的所有用户,能够在一致的场景中进行活动,
这里典型的分为状态同步和帧同步,可以额外百度了解一下。

创建一个玩家

这里我们用一个Cube当作玩家,
需要为之挂载上NetworkIdentity:

只有挂载了NetworkIdentity,网络中枢才能识别到这个物件,并对之进行同步。

接下来将Cube作为一个预制体保存,并在场景中删除,
后拖拽预制体到网络中枢的Player Prefab插槽中,
以后它(玩家)的产生就完全依靠网络中枢在连接到主机后自动生成,
而不是在运行场景之前直接放进场景中:

测试

现在完成的功能,就是每当一个用户连接到主机(当前默认是本机),
一个玩家预制体(Cube)就会被创建出来

打包出来一份游戏,并打开
在Unity中进入Play模式,并作为主机(服务端和客户端)运行:

将刚刚打包出来的作为客户端运行:

此时可以看到有多个Cube被创建出来:

客户端退出后,服务端的Cube也会自动少一个:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/902231.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号