如何显示每个玩家的分数【网管】
How to display each player's score [Network Manager]
我正在开发基于内置网络管理器(基于这个很棒的教程 https://unity3d.com/learn/tutorials/s/multiplayer-networking)的简单多人游戏(目前为 2 人)游戏,但我完全不知道如何解决我的问题。我找到的关于评分系统的每个教程都专注于本地多人游戏(不使用网络管理器)。
我的问题是:
如果我将玩家的分数存储在他们的玩家预制实例(作为字段)中,如何以 [Player1Score : Player2Score] 等格式在每个玩家的 UI 上显示两个玩家的分数。
我想以任何方式显示分数,作为单独的或作为一个附加字符串(UI 文本)。
欢迎任何帮助和想法!
干杯!
基本上,据我所知,您首先需要一个控制器(服务器端)来保持分数。
然后通过 Syncvar 和 RPC,您可以将所需的分数传播给客户。
逻辑由您选择,例如,您可以在每次得分时使用委托(这取决于您的游戏),并同步变量。
不知道你的情况是什么?但是我可以建议使用 Socket 在客户端和服务器之间传输数据吗?从那里可以向对手显示双方的分数。
通过 https://docs.microsoft.com/en-us/dotnet/api/system.net.sockets.socket?view=net-5.0
我正在开发基于内置网络管理器(基于这个很棒的教程 https://unity3d.com/learn/tutorials/s/multiplayer-networking)的简单多人游戏(目前为 2 人)游戏,但我完全不知道如何解决我的问题。我找到的关于评分系统的每个教程都专注于本地多人游戏(不使用网络管理器)。
我的问题是: 如果我将玩家的分数存储在他们的玩家预制实例(作为字段)中,如何以 [Player1Score : Player2Score] 等格式在每个玩家的 UI 上显示两个玩家的分数。 我想以任何方式显示分数,作为单独的或作为一个附加字符串(UI 文本)。
欢迎任何帮助和想法! 干杯!
基本上,据我所知,您首先需要一个控制器(服务器端)来保持分数。 然后通过 Syncvar 和 RPC,您可以将所需的分数传播给客户。 逻辑由您选择,例如,您可以在每次得分时使用委托(这取决于您的游戏),并同步变量。
不知道你的情况是什么?但是我可以建议使用 Socket 在客户端和服务器之间传输数据吗?从那里可以向对手显示双方的分数。
通过 https://docs.microsoft.com/en-us/dotnet/api/system.net.sockets.socket?view=net-5.0