网页游戏 已归档

phaser3-multiplayer-with-physics

yandeu/phaser3-multiplayer-with-physics

Phaser 3 - 使用物理(MatterJS和Arcade)的实时多人游戏示例

185
Stars 标星
51
Forks 分支
1
Watchers 关注
0
Open Issues
TypeScript
主要语言
MIT
开源协议
1023 KB
仓库大小
3 年前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:yandeu/phaser3-multiplayer-with-physics
git clone https://github.com/yandeu/phaser3-multiplayer-with-physics.git
git clone git@github.com:yandeu/phaser3-multiplayer-with-physics.git
README.md master

机器翻译正文由机器翻译自项目原始文档(英文),排版经程序统一处理,可能存在偏差,请以原项目仓库为准。



Phaser 3 - 带物理的实时多人游戏示例

一个使用 Phaser 3 的实时多人示例,带有物理引擎(MatterJS 和 Arcade),在 NodeJS 服务器上使用 Express 和 Socket.io


⚠️ 注意

这个示例使用了 @geckos.io/phaser-on-nodejs ,它非常慢且繁琐。如果你需要在服务器上运行 Phaser 的 Arcade 物理,我建议使用 arcade-physics 。我将不再更新这个示例。

播放它

此示例在 Heroku 上的 NodeJS 上运行(欧洲免费 Dyno),这导致示例有时需要 大约 1 分钟才能加载。

  • 在这里试玩 - phaser3-multiplayer-example 如果您的延迟低于 100ms,效果最佳,如果您位于欧洲,通常会是这种情况。

主要特点

  • 物理完全在服务器上计算
  • 自动管理房间(新的 Phaser 实例)
  • 物理调试版本
  • 一个漂亮的统计页面

壁虎.io

为什么这个游戏示例不使用 geckos.io?嗯,有两个原因:

  • 当时 geckos.io 并不存在。
  • 这个示例部署在 Heroku 上,而 Heroku 不允许转发 UDP 端口,而 geckos.io 依赖此功能。

视频

在 YouTube 上观看

真实物理与街机物理

这个示例包含两个不同的游戏。一个使用 MatterJS,另一个使用 Arcade。MatterJS 游戏只有一个关卡。Arcade 游戏是一个简单的平台游戏,有三个关卡。

所以总共有四个不同的关卡可以玩。对于每个关卡,服务器会创建一个新房间,这会创建一个新的 Phaser 实例,并且彼此完全隔离。每个房间最多可以有四个玩家。

结构

├── src
│   ├── client  # Contains all the code the client will need
│   ├── physics # This is for debugging the physics (Arcade and MatterJS)
│   ├── server  # Contains the code running on the NodeJS server
│   └── stats   # The stats page will show useful information about the server

使用方法

要克隆并运行此模板,您需要在计算机上安装 Git 和 Node.js(其中包含 npm)。

您还需要安装一些额外的软件包,因为此示例使用了 Node-Canvas。请参见 这里。

在命令行中:

# Clone this repository
$ git clone --depth 1 https://github.com/yandeu/phaser3-multiplayer-with-physics.git phaser3-example

# Go into the repository
$ cd phaser3-example

# Install dependencies
$ npm install

# Start the local development server (on port 3000)
$ npm run dev

# To publish a production build using docker use docker:publish
# This needs docker and docker-compose to be installed on your machine
$ npm run docker:publish

其他多人游戏示例

正在寻找更简单的多人游戏示例?请查看 Phaser 3 - 多人游戏示例。

许可证

麻省理工学院许可 (MIT) 2019 - Yannick Deubel。请查看 LICENSE 了解更多详情。

本站来源与版权声明
  • 本文标题:phaser3-multiplayer-with-physics - Phaser 3 - 使用物理(MatterJS和A
  • 本文链接:https://www.cn121.com/webgame/yandeu-phaser3-multiplayer-with-physics.html
  • 原项目:yandeu/phaser3-multiplayer-with-physics 版权归原作者 yandeu 及贡献者所有
  • 收录信息:本站于 2026-10-01 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 MIT(查看 LICENSE 原文),本站译文为其衍生内容;使用、修改、分发请以该仓库 LICENSE 原文为准。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 yandeu/phaser3-multiplayer-with-physics。
  • 翻译说明:本页正文为人工智能生成内容——由机器翻译对原项目 README 初译、经程序校验排版,可能存在错漏,请以原项目文档为准。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。