多人游戏

893次阅读
没有评论

共计 673 个字符,预计需要花费 2 分钟才能阅读完成。

多人游戏

Multiplayer 对象简介

Multiplayer 对象为开发者提供了构建实时在线多人游戏的能力,主要通过 WebRTC DataChannels 实现网络通信。

脚本接口

使用 JavaScript 或 TypeScript 编码时,可通过 IMultiplayerObjectType 脚本接口访问此对象的功能。

功能特点

  • 基于 UDP 的传输 :最小化延迟,提供可靠和不可靠模式。
  • NAT 遍历 :支持通用路由器 / 网络设置的连接。
  • 插值和外推模式 :保证游戏中运动的流畅性。
  • 信令服务器与 TURN 服务器 :由 Scirra 托管,帮助对等体互相连接。
  • 权威主机模型 :防止作弊,提供本地输入预测。
  • 局域网游戏支持 :实现近乎零延迟的游戏体验。
  • 数据压缩与带宽管理 :自动减少带宽消耗,避免冗余。

教程系列

推荐从以下四个入门教程开始学习:

  1. 多人游戏教程 1:概念
  2. 多人游戏教程 2:聊天室
  3. 多人游戏教程 3:乒乓球
  4. 多人游戏教程 4:实时游戏

信令和托管

信令服务器用于玩家之间的连接,而实际的游戏数据传输由游戏主机处理。可以选择使用专用服务器来运行游戏以优化连接质量。

对等 ID 与消息发送

每个连接的玩家会被分配一个唯一的对等 ID,用于识别和消息发送。主机可以直接向任何对等方发送消息,而对等方只能直接与主机通信。

更新游戏与多人游戏条件

主机对游戏数据及其设置具有权威性。多人游戏条件包括比较对等计数、检测是否为主机、响应对等消息等。

动作与同步

提供了添加客户端输入值、将对象与对等关联、断开连接、发送消息、设置带宽配置文件等一系列动作来管理多人游戏的各个方面。Sync 对象自动同步对象信息,确保所有玩家看到一致的游戏状态。

正文完
 0
评论(没有评论)