本节书摘来自华章出版社《HTML5 2D游戏编程核心技术》一书中的第3章,第3.10节小结,作者[美] 戴维·吉尔里,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
3.10 小结
视频游戏最重要的地方是图像和动画。在本章中,我们一起学习了如何使用HTML5 canvas元素绘制图形和图像,了解了如何使用包装在requestNextAnimationFrame() polyf?ill
中的requestAnimationFrame()
函数来实现对时间要求较高的动画帧绘制,而不是使用传统的setTimeout()
函数和setInterval()
函数,因为它们不适合用于动画制作。
本章还介绍了如何通过持续地平移canvas元素绘图区域的坐标系,来产生明显的运动效果。尽管本章讨论的坐标系平移仅限于水平滚动,但可以很容易地扩展本章中的代码来完成垂直方向的,甚至是两个方向的滚动。
视频游戏中的物体不应该因为潜在帧速率的改变而简单地减速或者加速,因此本章介绍了如何实现基于时间的运动,也即运动严格基于时间,而非依赖于当前的帧速率。
最后,本章介绍了如何通过使前景物体比后景物体移动快的方法,来产生视差假象。