Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# unity多人游戏-同步转换vs同步设置目标-navmesh代理_C#_Unity3d_Server_Udp_Navmesh - Fatal编程技术网

C# unity多人游戏-同步转换vs同步设置目标-navmesh代理

C# unity多人游戏-同步转换vs同步设置目标-navmesh代理,c#,unity3d,server,udp,navmesh,C#,Unity3d,Server,Udp,Navmesh,我不熟悉脚本,我一直在使用Navmesh代理为1V1游戏Mova风格的游戏编写专用UDP服务器。 我是否应该不断更新播放器转换或仅在播放器单击移动时同步,并在其他客户端上设置目标位置? 另外,关于黑客攻击,我是否必须让服务器对所有内容进行双重检查?谢谢。您有几种方法可以做到这一点,我将指出其中两种方法的优缺点 玩家将点击移动位置发送到服务器 1) 然后,服务器将此位置发送给所有客户端(包括发起人),然后客户端计算路径并开始插值移动 优点:低带宽,执行速度快,实现复杂度低 缺点:客户端很容易被黑客

我不熟悉脚本,我一直在使用Navmesh代理为1V1游戏Mova风格的游戏编写专用UDP服务器。 我是否应该不断更新播放器转换或仅在播放器单击移动时同步,并在其他客户端上设置目标位置?
另外,关于黑客攻击,我是否必须让服务器对所有内容进行双重检查?谢谢。

您有几种方法可以做到这一点,我将指出其中两种方法的优缺点

玩家将点击移动位置发送到服务器

1) 然后,服务器将此位置发送给所有客户端(包括发起人),然后客户端计算路径并开始插值移动

优点:低带宽,执行速度快,实现复杂度低

缺点:客户端很容易被黑客攻击

2) 服务器计算玩家需要遵循的路径(寻路),并将路径节点发送到客户端

优点:不可更改,服务器将在每个玩家的操作中拥有最终决定权

缺点:服务器需要物理或路径查找才能正常工作,这是一项非常艰巨的工作。若你们实现了物理,你们将能够在服务器上插入移动,并在固定时间内将位置发送给客户端以模拟移动

帮助您实现第二个选项的有用技术包括:, 这两者都需要您将几何体(地形)加载到服务器端)并优化客户机-服务器网络物理


祝您好运,您可以要求任何澄清或帮助。

您能解释一下您使用的是什么服务器吗?如果它的自定义版本是什么语言,它有/需要什么功能。如果我回答不正确,我很抱歉,我很新。Udp服务器,语言c#,将从当前连接到它的所有客户端接收消息的服务器,为游戏设置了大厅和配对系统。我将如何在服务器上实现我的unity游戏物理?你知道有什么指南可以帮助你吗?我应该在unity的服务器中使用unity的物理,通过使用线程吗?而不是在外面console@xred我不认为你可以在Unity之外使用Unity的物理,但是你可以使用不同的物理和/或寻路引擎来为你做这项工作,而且你不需要在服务器上使用繁重的物理,只是绝对关键的事情,可以影响你的游戏。检查我提供的BulletSharp链接,并检查演示如何使物理引擎工作。