Unity官方内置网络NetWork官方实例教程(一)

Unity官方内置网络NetWork官方教程——拓展(三)
Unity官方内置网络NetWork官方实例教程(二)

0x00 介绍NetWorkManager

网络管理器,用来控制多人游戏项目的状态,包括游戏状态管理、生成管理、场景管理,匹配以及允许访问调试信息。可以参考下(网上参考)面两张图片:
在这里插入图片描述
在这里插入图片描述
第一个案例是官方案例

  1. 基础实现篇(1-2)
  2. 拓展细化篇 (3)

第二个案例是一个简易的聊天室(4)

最近项目测试用到的,记录一下 ,通过两个案例让大家充分了解unet,希望对大家有所帮助。最终效果如图所示(因测试需求需创建新玩家时修改不同标签等数据,所以图中是代码生成玩家,稍后都会写到):
在这里插入图片描述

0x00 简介

  • 首先说一下Network Manager HUD组件(即连接方式的UI选择框):

    1. LAN Host:选择后就相当于主机,并且也代表第一个玩家,等待别的玩家连接。
    2. LAN Client: 客户端,输入要连接的服务器连接即可。
    3. LAN Server Only:仅当做服务器,等待其他玩家连接。
  • [Command] 表示客户端向服务端发送的命令,在服务端执行

  • [SyncVar]用于标识序列化变量,实现变量同步

  • [SyncEvent]用于标识序列化事件,实现事件同步

  • [Client]表示只能在客户端调用

  • [ClientCallback]表示客户端执行的回调

  • [ClientRpc]表示服务端向客户端发送的命令,在客户端执行

0x01 创建NetWorkManager

  • 首先创建一个GameObject。(自己命名如:_NetWorKManager)
  • 添加NetworkManager和NetworkManagerHUD这两个组件。
    如下所示:
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QPYM2uRa-1586240263004)(https://i.imgur.com/4fk2XiE.png)]

因需求我是自己创建一个脚本,然后继承的NetWorkManager,稍后会仔细说道。

0X02 创建玩家

  • 首先在Hierarchy面板新建一个胶囊体Capsule(样式自定义即可)重命名为:Player
  • 给玩家添加NetWorkIdentity组件,并且将Local Player Anthority勾选。
  • 如需同步和自定义玩家位置需挂NetWorkTransform组件(细化里面详细讲解)如图所示:
  • 最后把玩家拖制为预制体,然后把预制体拖到NetwoekManager下的Spawn Info 的 PlayerPrefab中,将Hierrarchy中的Player删除即可。
  • 给玩家添加脚本,自定义命名即可(例子为:PlayerController)首先来制作玩家的移动。(即wasd移动,直接上代码)
		
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值