H5小游戏 活跃维护

phaser-project-template

yandeu/phaser-project-template

🕹️ Phaser 3 - 使用 TypeScript 和 webpack 的入门模板。

423
Stars 标星
81
Forks 分支
15
Watchers 关注
3
Open Issues
TypeScript
主要语言
MIT
开源协议
1.9 MB
仓库大小
3 年前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:yandeu/phaser-project-template
git clone https://github.com/yandeu/phaser-project-template.git
git clone git@github.com:yandeu/phaser-project-template.git
README.md master

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



Phaser 3 TypeScript 入门模板

一个用于 Phaser 3 的入门模板,配合 TypeScript 和 webpack,用于构建在浏览器和移动设备上运行良好的出色 HTML5 游戏。

主要特性 • 预览 • 如何使用 • enable3d • PWA • 原生应用 • 自定义配置 • ES6 • 有用链接 • 多人游戏 • 示例 • 署名 • 许可证

想使用 ES6 而不是 TypeScript?看看 phaser-project-template-es6

主要特点

  • ESNext 特性已准备好(async/await,Rest/Spread 操作符)
  • 代码分割
  • 代码混淆
  • 带有 SourceMap 和实时重载的开发服务器
  • PWA 支持离线功能及“添加到主屏幕”安装提示
  • 使用 Capacitor 轻松构建原生应用
  • 包含 Phaser 3 TypeScript 类型定义
  • 用于开发和生产构建
  • 为 JavaScript 文件添加 webpack 内容哈希(生产环境)

预览

这是你安装此模板后得到的内容。一个用 TypeScript 编写的简单且干净的入门模板。试试吧!

使用方法

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

# Clone this repository (yes, npx not npm)
$ npx gitget yandeu/phaser-project-template phaser-template

# Go into the repository
$ cd phaser-template

# Install dependencies
$ npm install

# Start the local development server (on port 8080)
$ npm start

# Ready for production?
# Build the production ready code to the /dist folder
$ npm run build

# Play your production ready game in the browser
$ npm run serve

在 /webpack/webpack.common.js 中更改 gameName。

你的所有游戏代码都在 /src/scripts 文件夹中。所有资源需要放在 /src/assets 文件夹中,以便在创建生产构建时复制到 /dist。不要更改 index.html 和 game.ts 文件的名称。

启用3D

想在你的 Phaser 游戏中添加 3D 对象和物理效果吗?查看 enable3d!

渐进式网页应用 (PWA)

这个模板 100% 支持 PWA。

ServiceWorker 默认是禁用的,并且配置为仅在 生产模式 下工作。 在 /src/index.html 中取消注释下面的那一行以启用它。

<script>
  if ('serviceWorker' in navigator) {
    window.addEventListener('load', () => {
      navigator.serviceWorker.register('./sw.js')
    })
  }
</script>

您可以通过以下步骤轻松个性化其设置:

  • 将 /pwa/icons 中的两个图标替换为您自己的图标。
    • 一个是 512x512,另一个是 192x192
  • 将您自己的 favicon.ico 添加到 /src
  • 在 /pwa 的 manifest.json 文件中调整这些参数
    • short_name:最多 12 个字符
    • name:完整的游戏名称
    • 方向:“横向”或“纵向”
    • background_color:启动画面的颜色
    • theme_color:导航栏的颜色——必须与 index.html 文件中的 theme-color 匹配
  • 您可以保持 /pwa 中的 sw.js(serviceWorker)原样。
  • 更改 /webpack/webpack.common.js 中的 gameName

在 developers.google.com 上了解更多关于 PWA 的信息

原生应用

构建原生应用程序最简单的方法是使用 https://html2app.dev/

或者手动使用 Capacitor 并遵循其 文档 进行构建。安装 Capacitor 后,唯一需要更改的是 capacitor.config.json 文件中的 webDir。将其设置为 dist,如下所示:

{
  "appId": "com.example.app",
  "appName": "YOUR_APP_NAME",
  "bundledWebRuntime": false,
  "webDir": "dist"
}

自定义配置

TypeScript 编译器

在 tsconfig.json 文件中更改 TypeScript 编译器的设置。

如果你是 TypeScript 新手,你可能希望将 "noImplicitAny" 设置为 false。

你可以在 这里 找到关于 TypeScript 编译器的更多信息。

类型定义

你可以将自定义类型定义放在 typings/custom.d.ts 中。

Webpack

所有 webpack 配置都位于 webpack 文件夹中。

混淆

默认情况下混淆是禁用的。

我们使用 webpack-obfuscator。如有需要,可在 webpack/webpack.prod.js 中更改其设置。所有可用选项列在 这里。

ES6

想使用 ES6 而不是 TypeScript?请切换到 phaser-project-template-es6

多人游戏

制作多人游戏?看看 geckos.io

有用链接

示例

使用此入门模板构建的游戏示例

平台游戏示例 [玩这个游戏 - 访问其仓库]

Phaser 3 Matter.js:汽车示例 [试玩此游戏 - 访问其仓库]

鸣谢

非常感谢 Rich @photonstorm 创作 Phaser

许可证

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

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