Unity的FishNet相关知识

FishNet和常规网络手游不太一样,他是可以将客户端和服务器写成一套代码的,也就是客户端也可以作为服务器

C#特性:

ServerRpc\] 方法添加了这个特性后,这个方法只会在服务端执行,由客户端调用,但是客户端不会执行这个方法 \[ObserversRpc\] 添加了这个特性的方法,只会在客户端运行,并且由服务端调用,服务端调用后,所有客户端都会被执行 \[TargetRpc\] 添加了这个特性后,只会在客户端运行,由服务器调用,并且需要指定一个NetworkConnection,只会给这个connection调用 我们平时开发有2种办法实现FishNet: 1.所有代码集成在一个项目中,服务器和客户端逻辑写在一起 2.服务器和客户端分成2个项目,分别处理逻辑 分成2个项目的时候需要注意踩坑点: 1.NetworkBehavior对象必须客户端和服务器同时有,并且类名完全一样。比如一个Player上有PlayerHealth脚本,那么客户端和服务器都得挂上这个脚本,并且名字不能改,否则会报错提示协议错误 其他的踩坑点: 1.Player上有Camera,那么客户端只有isOwner为true的情况才开启这个Camera,并且其他玩家Camera必须默认隐藏,不然会导致客户端的视角错乱,因为会有很多相机存在场景里unity不知道是哪个! 2.NetworkTransform如果勾选了Client Authoritative,那么只会由客户端控制Transform,服务器自己拖动坐标是没有用的,如果没有勾选,那么就是由服务器控制Transform

相关推荐
猫头虎12 小时前
如何在浏览器里体验 Windows在线模拟器:2026最新在线windows模拟器资源合集与技术揭秘
运维·网络·windows·系统架构·开源·运维开发·开源软件
古城小栈14 小时前
Rust 网络请求库:reqwest
开发语言·网络·rust
qq_3168377517 小时前
IP网段冲突 配置指定ip使用指定的网络接口发送,而不经过默认网关
服务器·网络·tcp/ip
布史18 小时前
Tailscale虚拟私有网络指南
linux·网络
枷锁—sha18 小时前
彻底解决 Google Gemini 报错:异常流量与 IP 地址冲突排查指南
网络·网络协议·tcp/ip
Xの哲學19 小时前
深入剖析Linux文件系统数据结构实现机制
linux·运维·网络·数据结构·算法
_风华ts19 小时前
虚幻引擎RPC
rpc·游戏引擎·虚幻
-To be number.wan19 小时前
经典真题精讲|2010年408统考第34题:文件传输最少需要多久?
网络·计算机网络
知乎的哥廷根数学学派20 小时前
基于多尺度注意力机制融合连续小波变换与原型网络的滚动轴承小样本故障诊断方法(Pytorch)
网络·人工智能·pytorch·python·深度学习·算法·机器学习
好多渔鱼好多21 小时前
【流媒体协议】RTSP / RTP / RTCP 协议全景介绍
网络·网络协议·rtp·rtsp·rtcp·ipc摄像头