UE5&C++ 多人 TPS 游戏(一)

1. 什么是 TPS 和 FPS ?

TPS(ThirdPerson Shooting):第三人称射击,如 PUBG、幽灵行动、全球使命等。

image

FPS(FirstPerson Shooting):第一人称射击,如 COD、CF、CS、无主之地、战地系列等。
image

2. 多人游戏概念

单机 SinglePlayer:一台机器、一个控制器、自行体验、信息不用通过网络交换

image

本地多人 Local Multiplayer:一台机器、多个控制器、多人本地体验、信息不用通过网络交换 或者 局域网下多台机器体验,信息需要通过局域网交换

image

联网多人 Online Multiplayer:互联网多台机器体验、信息需要通过互联网交换

image

3. 信息交换的方式

3.1 Peer to Peer (P2P)

可以理解为端到端,信息直接通过网络发给其他玩家。

image

导致大量的信息传输,且没有权威版本控制(每个人的游戏都可以自我魔改、开挂等)。

3.2 Client-Server (CS)

理解为 客户端(client)与服务器(server) 之间通信,客户端玩家将信息发给服务器,服务器转发给其他玩家。

image

这种方式就有权威版本了,服务器就是权威:控制每个玩家的行为是否对游戏有合法性,合法则可以更新到每个玩家,否则拒绝更新,并令发送信息的玩家回退版本。

image

Client-Server 的 实现方式

image

Listen Server:玩家本身机器做服务器,玩 + 渲染。
Dedicated Server:专用机器做服务器,仅有信息的处理,即接收、判断和发送。

4. 虚幻引擎的处理

image

虚幻引擎采用 CS,一台机器做权威版本处理玩家信息。
单人游戏时,也是 CS,只不过客户端和服务器是同一台机器。

下一节:UE5&C++ 多人 TPS 游戏(二)

posted @ 2024-04-17 14:02  bok_tech  阅读(240)  评论(0)    收藏  举报