没搞清楚confluence上如何插入markdown...
个人理解的两种方式 ##方式一 房间模式:(自带一个需要准备等待功能的模式)
###创建场景 Offline,Room,GamePlay 作用:区分Online和非Online模式
###准备脚本 通过create->mirror 创建如下脚本
[NetworkRoomManager] 作用:房间管理,有房间创建,连接,等房间相关的回调 基于房间补充相关逻辑
[NetworkRoomPlayer] 作用:包含房间里的玩家状态和回调
[NetworkBehaviour]
创建多个NetworkBehaviour : 如,NetworkBehaviour 改为 myPlayer NetworkBehaviour 改为 myItem 作用: 有了本脚本,才会标记告知服务器需要同步本对象 继承了MonoBehaviour的Network脚本, 可以衔接Update等函数书写自己的逻辑, 取到玩家网络状态,如
isServer 如果是此对象是在服务器上运行的(包括服务器+客户端一体的主机),则返回true isServerOnly 如果是此对象仅在服务器运行的(而非包含客户端的主机),则返回true isClient 如果此对象已经存在,且处于客户端上(包括主机的客户端),则返回true 等等
###准备预制体 创建空物体,命名为RoomPlayer,挂MyNetworkRoomPlayer 创建胶囊,命名为Player,挂MyPlayer 创建Cube, 命名为Item 挂myItem
客户端操作权限: Player预制体上的挂NetworkTransform脚本的ClientAuthority 一定要勾选上,否则没有客户端操作其状态的权限。
在玩家或者我物体预制体上挂载,NetworkIdentity 脚本 (往往挂载其他Mirror脚本时,NetworkIdentity脚本会自动挂载)
###创建管理组件
1.在Offline场景空物体,挂MyNetworkRoomManager脚本 挂载好在线和离线对应的场景,Player预制体,以及房间相关的预制体和场景
2.同时挂上NetworkManagerHUD,
启动时开启Host服务器和连接的显示UI
写一个简单的操作
在myPlayer脚本(NetworkBehaviour)中加入移动操作。