Unity 基于Netcode for gameObjects实现局域网同步

这篇具有很好参考价值的文章主要介绍了Unity 基于Netcode for gameObjects实现局域网同步。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

注意事项:

1.需要将unity升级到2021.3及以后的版本的稳定版本,使用不稳定的2022版本测试过,存在打包问题:

效果:

Unity 基于Netcode for gameObjects实现局域网同步


所需Package:

1.Netcode for gameObjects
Unity 基于Netcode for gameObjects实现局域网同步
2.Multiplayer Tools
该package是附带Netcode for GameObjects手动安装的
3.Burst
该Package同样也是附带安装,如果在不稳定的2022版本中打包问题也源于这个package,猜测可能是该Package未在2022版本中及时升级所致。
Unity 基于Netcode for gameObjects实现局域网同步

操作:

1。需要创建一个空的游戏物体,并挂载上Network Manager 组件,Unity 基于Netcode for gameObjects实现局域网同步

Slect transport 位置选择unity transform,之后会自动在该游戏物体上挂载上一个Unity Transport组价,
Unity 基于Netcode for gameObjects实现局域网同步
然后给游戏物体重命名为NetcodeWorkManager方便管理。
Unity 基于Netcode for gameObjects实现局域网同步
最后添加一个Network Transfrom组件
Unity 基于Netcode for gameObjects实现局域网同步

2.==在NetWork Manager 中选择要同步的预制体需要以下操作:需要添加一个Network Object的组件给预制体添加一个唯一的全局哈希值,以作为预制体的识别码。
Unity 基于Netcode for gameObjects实现局域网同步


如果预制体中存在缸体,需要添加Network Rigidbody组件,改脚本组件中没有可以可视化修改的参数
Unity 基于Netcode for gameObjects实现局域网同步


最后,仍然需要挂载一个Network Transform组件,同第一个Network Manager

3.由于,unity默认对客户端不信任,所以我们需要重写NetworkTransform脚本,取消服务器权威权限,来让客户端也能够自己执行脚本。

using Unity.Netcode.Components;
using UnityEngine;

namespace Unity.Multiplayer.Samples.Utilities.ClientAuthority
{
    [DisallowMultipleComponent]
    public class ClientNetworkTransform : NetworkTransform
    {
        protected override bool OnIsServerAuthoritative()
        {
            return false;
        }
    }
}

然后将上面两个已经挂载好的Network Transfrom 组件替换为重写的脚本组件Unity 基于Netcode for gameObjects实现局域网同步
别忘了还有预制体中的Network Transform组件需要替换,已经我们可以在Network Transfrom组件中可以选择需要同步的属性,取消不需要同步的属性可以减少带宽,降低延迟
Unity 基于Netcode for gameObjects实现局域网同步文章来源地址https://www.toymoban.com/news/detail-514480.html

到了这里,关于Unity 基于Netcode for gameObjects实现局域网同步的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Unity2022】Unity多人游戏开发教程-Netcode for GameObjects-使用命令行启动多人游戏

    首先亮出文档,可以直接去看官方文档。 本文章大部分内容来源于官方文档,另一部分为笔者讲解的教程。 如果英语不好,或看不懂文档的人,可以阅读本文章。 官方文档 官方文档的中文翻译: 中文翻译 本教程使用的开发环境如下: Windows10 Unity 2022.3.0f1c1 Netcode for GameOb

    2024年02月08日
    浏览(57)
  • Unity + Mirror实现卡牌游戏局域网联机

    局域网联机插件 Mirror:Mirror | 网络 | Unity Asset Store 本地客户端测试多人游戏(不用打包)插件 : ParrelSync Mirror官方文档:General - Mirror (gitbook.io) 导入Mirror Package 创建空物体,添加 Network Manager , Network Manager HUD 以及 KCP Transport (也可以选择其他网络连接方式) 导入 ParrelSyn

    2024年01月23日
    浏览(49)
  • 【Unity】(Socket)TCP 实现同一局域网 一台主机控制多台主机

    前几天博主接到一个任务:5台HTCVIVEPro设备,其中一台设备进行演示,另外四台设备画面同步。 在设备没到之前,博主进行了一下前期准本工作: 同一局域网 一台主机控制多台主机 PS:博主参考了其它博主大大的文章,感觉很有用!!!!!! 如果需要其它的一些TCP操作流程

    2024年02月10日
    浏览(48)
  • JAVA基于局域网的聊天室系统的设计与实现

           本文介绍了采用JAVA编程开发视频聊天系统的一套比较常用的解决方案。文字聊天采用TCP模式;语音视频聊天采用UDP模式,在客户端之间点对点的进行。在该方案中,通过函数库VFW来实现视频捕获、影像压缩以及影像播放。微软公司提供的专门用于视频捕获开发的工具

    2023年04月15日
    浏览(39)
  • ESP32-CAM网络摄像头系列-01-基于RTSP协议的局域网视频推流/拉流的简单实现

            由于项目需要,最近开始开坑关于ESP32-CAM系列的RTSP网络摄像头系列,该文章为该系列的第一篇文章。用于记录项目开发过程。         使用ESP32-CAM获取图像数据,并通过RTSP协议将获取到的视频流传输到上位机进行显示。         使用ESP32-CAM进行视频推流,

    2024年02月11日
    浏览(56)
  • Unity使用Mirror制作局域网的同步

    1.新建空物体,为管理脚本的物体:manager,挂载NetworkManager,kcpTransport,NetworkManagerHud. 2.设置玩家出生点,spawnPoint,设置好初始化的position的位置(*),挂载NetworkStartPosition的脚本 3.新建Player的预制体,挂载NetworkIdentity,NetworkTransform(unreliable)的脚本,还有自己的自定义脚本,注意自定义脚本需要

    2024年04月14日
    浏览(41)
  • Unity之使用Photon Server + PUN2 开发局域网多人游戏

    Photon Engine是一款跨平台的实时多人游戏引擎,它提供了可靠的基础设施和工具,使开发者能够轻松地构建和部署多人游戏。Photon Engine支持多种平台,包括PC、移动设备和Web,同时还提供了多种语言的SDK,如C++、C#、Java、JavaScript等,使得开发者可以使用自己熟悉的编程语言进

    2024年02月13日
    浏览(41)
  • 局域网基于linux麒麟v10搭建mysql

    因为是局域网 缺失很多工具,要先安装yum源 自行百度吧。 curl -o yum.sh http://169.254.169.253:10080/KylinOS/yum.sh sh yum.sh yum clean all yum makecache 1、执行安装依赖 sudo yum install -y wget vim gcc gcc-c++ make cmake ncurses ncurses-devel bison openssl openssl-devel boost-devel libtirpc libtirpc-devel 或 yum install gcc gcc-

    2024年02月12日
    浏览(41)
  • 路由模式怎么实现局域网中三层交换机互联?实现局域网中三层交换机互联方法教程

    复习: 交换机有关vlan的配置: switch#configure terminal !进入全局模式 switch(config)# vlan 10 !创建vlan 10 switch(config-vlan)# name test10 !改名为test10 switch#show vlan !显示vlan配置 switch(config-if)# interface fastethernet 0/5 !进入f0/5的接口配置模式 switch(config-if)#switchport trunk encapsulation dot1q swit

    2024年02月06日
    浏览(42)
  • 【系统集成】基于ensp的小型局域网网络搭建及需求分析(一)

    本实验的目的在于建立小型局域网。由于公司由财政部、人事部、科技部三个部门组成,分布在同一个交换机下。设计以下网络:三个个部门使用两台交换机连接,然后连接到汇聚交换机,再通过路由器与外网以及其他部门网络相连。为了控制网络上的广播风暴,增加网络的

    2024年02月09日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包