Phaser 4.2.1 API 参考指南:7 个高频接口与源码定位

发布时间:2026/10/27 9:50:07

Phaser 4.2.1 API 参考指南:7 个高频接口与源码定位 Phaser 4.2.1 API 参考指南7 个高频接口与源码定位【免费下载链接】phaserPhaser is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering.项目地址: https://gitcode.com/gh_mirrors/ph/phaser弹球演示写完了碰撞回调却找不到在哪注册场景切换方法也不在文档首页。下面给 Phaser 4.2.1 的 API 参考清单每条都带源码路径可直接抄用。跑一个开箱即用的弹球完整配置不依赖外部资源new Phaser.Game({ type: Phaser.AUTO, width: 800, height: 600, physics: { default: arcade, arcade: { gravity: { y: 400 } } }, scene: { create: function () { const box this.add.rectangle(400, 100, 40, 40, 0xffcc00); this.physics.add.existing(box); box.setCollideWorldBounds(true); box.setBounce(1, 1); } } });type: Phaser.AUTO优先 WebGL不可用时自动退回 Canvasthis.physics.add.existing(box)传什么物理体就加在谁身上setBounce系数是 0-1填 1 才不掉能量跑起来后黄色小方块会在画布底部持续弹跳。重力值来自 physics 配置里的gravity.y。查高频 API整理 7 个覆盖 80% 场景的高频接口高频操作对应类 / 方法源码相对路径游戏初始化new Phaser.Game(config)src/core/Game.js场景切换this.scene.start(name, data)src/scene/SceneManager.js精灵创建this.add.sprite(x, y, key)src/gameobjects/sprite/Sprite.js注册碰撞回调this.physics.add.collider(objA, objB, cb)src/physics/arcade/Factory.js创建帧动画this.anims.create(config)src/animations/AnimationManager.js加载精灵表this.load.spritesheet(key, url, size)src/loader/LoaderPlugin.js读取按键输入this.input.keyboard.addKey(SPACE)src/input/keyboard/KeyboardPlugin.js拆三个重点子系统注册碰撞回调arcade 物理工厂干两件事挂物理体、注册碰撞。create: function () { const player this.add.rectangle(100, 300, 32, 32, 0x3366ff); const gem this.add.rectangle(300, 300, 32, 32, 0xffcc00); this.physics.add.existing(player); this.physics.add.existing(gem); this.physics.add.overlap(player, gem, function (a, b) { b.setScrollFactor(0).setVisible(false); }); }overlap 只通知、不推挤想让物体分开换成 collider。第三个参数就是回调函数两个物体接触的那一帧触发一次。切换场景并传数据Scene 是状态的基本单位start 第二个参数是跨场景通信的入口。create: function () { this.input.keyboard.addKey(Phaser.Input.Keyboard.KeyCodes.ESC) .on(down, () this.scene.start(GameOver, { score: 100 })); } // GameOver 场景内部 create: function (data) { this.add.text(16, 16, 得分: data.score); }start 会停掉当前场景再起新场景想让两个场景并行跑用 this.scene.launch。只想停某一个用 this.scene.stop(key)。播放帧动画与补间anims 系统只管帧序列和播放状态播放动作发生在 sprite 上。示例依赖一张 player.png 精灵表多帧 32x32自行放入 assets/ 目录。preload: function () { this.load.spritesheet(player, assets/player.png, { frameWidth: 32, frameHeight: 32 }); }, create: function () { this.anims.create({ key: walk, frames: this.anims.generateFrameNumbers(player, { start: 0, end: 3 }), frameRate: 10, repeat: -1 }); const player this.add.sprite(100, 100, player); player.play(walk); this.tweens.add({ targets: player, x: 300, duration: 1000 }); }frameWidth 和 frameHeight 不传就会切帧失败这是做动画最常见的坑。收集生态与扩展资源仓库里的几份指南配合源码一起看引擎入口与构建脚本说明README.mdTypeScript 类型声明types/phaser.d.ts3.x 升 4.x 迁移指南changelog/v4/4.0/MIGRATION-GUIDE.mdWebGL 着色器编写指南docs/Phaser 4 Shader Guide/Phaser 4 Shader Guide.md渲染内部空间图解docs/Phaser 4 Internal Space Guide/Phaser 4 Internal Space Guide.md确认版本与里程碑当前仓库为 4.2.1代号 Giedi是 4.x 系列最新正式版本3.x 系列止步于 3.902025 年 5 月两条线并行维护4.0 是 3 到 4 的最后一次大改版4.1 与 4.2 以修 bug 和补渲染为主完整变更日志CHANGELOG.mdclone 下来可以先跑一遍测试套件确认本地环境没问题git clone https://gitcode.com/gh_mirrors/ph/phaser cd phaser npm install npm test然后把上面弹球示例里的 rectangle 换成自己的精灵试一次碰撞回调。【免费下载链接】phaserPhaser is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering.项目地址: https://gitcode.com/gh_mirrors/ph/phaser创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/27 9:45:04

基于Springboot船舶维保管理系统【附源码+文档】

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/27 9:45:04

Oracle监听(LISENER LOG)日志清理

目录 一、Oracle监听日志 1.1.日志产生原因 1.2.为什么需要清理? 二、清理核心原则 三、手动清理整体流程(实验环境-11.2.0.4.0) 3.1.查看集群状态 3.2.查看监听状态 3.3.确认监听状态正常之后(暂停监听记录) 3.4.清理…

2026/10/27 9:45:04

基于Springboot船运物流管理系统【附源码+文档】

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/27 10:35:17

微信小程序商城毕业设计:源码+数据库脚本+教程全链路

简介:面向微信小程序课程设计与毕业设计场景的商城项目源码包,适合需要完成商城类小程序作业、答辩演示或二次开发练习的学生与初学者。内容围绕商品展示、分类发现、购物车、支付、消息与个人中心等常见模块组织,页面结构完整,代…

2026/10/27 10:35:17

.NET Framework 4.5 老项目直连 PostgreSQL 实践

简介:这份面向 .NET Framework 4.5 开发者的 PostgreSQL 连接组件包,聚焦 Npgsql 数据提供程序及配套安全组件,适合需要在传统 .NET 项目中接入 PostgreSQL、处理 ADO.NET 数据访问或 Entity Framework 映射的开发者使用。包内共 19 个文件&a…

2026/10/27 10:35:17

深入理解 Radix Tree:原理、优势、劣势与 C 语言实现

一、引言在操作系统、网络协议栈、数据库和高性能存储系统中,经常需要根据某个键快速查找对应的数据。例如:根据字符串查找对应的配置项。根据 IP 地址查找路由表中的匹配项。根据页索引查找 Linux 内核中的 page cache。根据整数索引查找内核对象。根据…

2026/10/27 10:35:17

Unity心电图波形参数化:振幅、波速、颜色实时可调

简介:面向Unity开发者与图形交互方向学习者的心电图线波模拟演示工程,围绕ECG波形上下振幅、波线滚动速度与线条颜色等参数的可调实现,适合从事游戏UI动效、医疗可视化演示及互动装置原型的中初级开发者参考。包内共6688个文件,以…

2026/10/27 10:30:16

B码对时号称稳如狗,为啥现在新变电站都在换PTP授时?

摘要:IRIG-B(B码)凭借数十年工程验证、抗干扰能力强、协议简单可靠,长期是国内变电站主流授时方案;但B码属于单向点对点/点对多点专用信号传输,存在布线量大、链路时延无法自动补偿、难以跨交换机组网、扩展…

2026/10/26 0:20:20

全国计算机二级C语言真题PDF高效刷题指南

简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…

2026/10/27 9:34:54

requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南

简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…

2026/10/27 0:59:21

递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现

简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…

2026/10/27 0:02:28

WorkBuddy_新建任务与工作模式19_“模式选错”的典型代价

“模式选错”的典型代价 摘要 在软件工程中,设计模式、架构模式、并发模式乃至团队协作模式的选择,往往在项目早期就决定了后续的开发效率和维护成本。本文通过多个真实场景,剖析“模式选错”带来的典型代价——包括返工成本、技术债务累积、…

2026/10/27 0:02:28

WorkBuddy_新建任务与工作模式20_新手推荐路径

新手推荐路径 摘要 在 AI 辅助开发工具快速普及的今天,新手面对最多的困惑往往不是"工具够不够强",而是"我该从哪一步开始用"。本文提出一条经过实践验证的三阶段学习路径:先从 Ask(问答式交互)起…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑