使用纯 JavaScript 的 2D 打砖块游戏

在本分步教程中,我们将创建一个完全使用纯 JavaScript 编写并在 HTML <canvas> 元素上渲染的 MDN 打砖块游戏。

每个步骤都提供可编辑的实时示例供您玩,以便您可以看到中间阶段应该是什么样子。您将学习使用 <canvas> 元素来实现基本游戏机制(如渲染和移动图像、碰撞检测、控制机制以及输赢状态)的基础知识。

要充分利用这一系列文章,您应该已经掌握了基础到中级的 JavaScript 知识。完成本教程后,您应该能够构建自己的网页游戏。

Gameplay screen from the game MDN Breakout where you can use your paddle to bounce the ball and destroy the brick field, with keeping the score and lives.

课程详情

所有课程 — 以及我们一起构建的 MDN 打砖块游戏 的不同版本 — 都可以在 GitHub 上找到。

  1. 创建 Canvas 并进行绘制
  2. 移动球
  3. 弹跳
  4. 挡板和键盘控制
  5. 游戏结束
  6. 建造砖块区域
  7. 碰撞检测
  8. 跟踪分数和胜利
  9. 鼠标控制
  10. 收尾工作

从纯 JavaScript 入手是掌握 Web 游戏开发扎实知识的最佳方式。之后,您可以选择任何您喜欢的框架并在您的项目中使用它。框架只是用 JavaScript 语言构建的工具;所以即使您打算使用它们,最好先学习语言本身,以便了解幕后到底发生了什么。框架可以加快开发时间并帮助处理游戏中枯燥的部分,但如果出现问题,您总是可以尝试调试它,或者直接用纯 JavaScript 编写自己的解决方案。

注意:这一系列文章可用作实践游戏开发研讨会的材料。如果您想就游戏开发进行演讲,还可以利用基于本教程的 Gamedev Canvas 内容包

如果您有兴趣使用游戏库来学习 2D Web 游戏开发,请参阅本系列的对应内容:使用 Phaser 的 2D 打砖块游戏

后续步骤

好的,让我们开始吧!前往第一章 创建 Canvas 并进行绘制