《HTML5 2D游戏编程核心技术》——第3章,第3.3节实现游戏主循环

简介:

本节书摘来自华章出版社《HTML5 2D游戏编程核心技术》一书中的第3章,第3.3节实现游戏主循环,作者[美] 戴维·吉尔里,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.3 实现游戏主循环
既然我们已经具备了绘制图形和动画这个先决条件,现在就可以让Snail Bait游戏动起来了。在一开始,我们会在Snail Bait游戏的HTML文件中为requestNextAnimationFrame()函数添加一段JavaScript代码,如程序清单3.7所示。
程序清单3.7 HTML


53998d50d6d9b2e6df415ad683d6a66a734a921a

程序清单3.8列出了游戏动画循环的开始阶段代码,一般称为游戏主循环。
程序清单3.8 游戏主循环


fb7a8bd2f113b2520b2ff493e694006896f88221


873919f1b39dfba5fa2af3adb7b9e64949e9b0d1

背景图像的onload事件处理程序调用startGame()函数,该函数通过第一次调用request-NextAnimationFrame()的polyf?ill实现来启动游戏。然后,到了绘制游戏第一个动画帧的时候,浏览器将会调用animate()函数。
animate()函数调用calculateFps()函数,使用当前时间值来计算动画的帧速率(阅读3.2.1节了解更多关于时间值的信息)。在计算完帧速率后,animate()函数调用draw()函数绘制下一个动画帧。然后,animate()函数调用requestNextAnimationFrame()函数维持动画。

相关文章
|
移动开发 HTML5
html5掷骰子跳棋游戏源码
html5掷骰子跳棋游戏源码
758 1
html5掷骰子跳棋游戏源码
|
移动开发 前端开发 Shell
《HTML5 Canvas核心技术 图形、动画与游戏开发》 读书笔记
《HTML5 Canvas核心技术 图形、动画与游戏开发》 读书笔记
|
7月前
|
移动开发 JavaScript 前端开发
HTML5最新经典俄罗斯方块游戏插件
HTML5最新经典俄罗斯方块游戏插件
|
10月前
HTML在线扫雷游戏网页源码
HTML在线扫雷游戏网页源码是一款基于HTML+CSS+JavaScript开发的在线扫雷小游戏单页源码,为用户提供了一个无需安装即可在浏览器中直接玩的扫雷游戏。该游戏的源码不仅包含了完整的游戏逻辑,还具备丰富的界面设计和用户交互功能,使得玩家能够轻松上手并享受扫雷带来的乐趣。
373 22
|
存储 人工智能 移动开发
HTML5 游戏开发实战 | 五子棋
五子棋是一种家喻户晓的棋类游戏,它的多变吸引了无数的玩家。本章首先实现单机五子棋游戏(两人轮流下),而后改进为人机对战版。整个游戏棋盘格数为 15×15,单击鼠标落子,黑子先落。在每次下棋子前,程序先判断该处有无棋子,有则不能落子,超出边界不能落子。任何一方有横向、竖向、斜向、反斜向连到 5 个棋子则胜利。
23864 8
HTML5 游戏开发实战 | 五子棋
|
移动开发 JavaScript 数据管理
HTML5 拖放在游戏中的应用
HTML5的拖放功能在游戏开发中广泛应用,尤其在创建交互式网页游戏时。它支持多种场景,如拖动角色或物品、选择和装备物品、拼图或配对游戏以及自定义界面布局。通过简单的HTML和JavaScript代码,可实现流畅的拖放交互,并提供视觉反馈,增强用户体验。此外,还需考虑设备兼容性和数据管理,确保游戏在不同设备和浏览器上都能良好运行。总之,HTML5拖放功能使网页游戏更生动有趣。
|
移动开发 前端开发 程序员
程序员必知:基于HTML5堆木头游戏
程序员必知:基于HTML5堆木头游戏
85 0
|
安全 Windows
在线网页版扫雷游戏HTML源码
在线网页版扫雷游戏HTML源码
604 1
在线网页版扫雷游戏HTML源码
切方块游戏 HTML5+jQuery【附源码】
切方块游戏 HTML5+jQuery【附源码】
171 0
|
前端开发 JavaScript
html+css+js开发一个猜数字游戏
【1月更文挑战第5天】html+css+js开发一个猜数字游戏
348 1