HTML5 Canvas游戏之小蜜蜂

心得

  • 画布游戏基本是像素操控,是一个 update -> clear -> draw -> wait 循环。
  • 用面向对象系统管理显示单元和舞台。
  • 用事件系统分离游戏逻辑。(特殊是的,在恰当的时机处理多个游戏对象的状态,如蜂群转向)
  • 用最简单的数据结构表示和管理蜂群。
  • 键盘输入处理,状态管理。(如何在每一帧锁定状态,如何使多键按下不冲突,如即开火又移动)
  • 视觉残余。(运动中的对象,即使是一个点,也会变成一条线)
  • 连续函数调用过滤。( throttle 处理选择有:1) 同步 2) 异步 )
  • 让帧率在运行时可变。(优先使用 requestAnimationFrame 提升性能)
  • 如何得到与帧率无关的速度。(变化的速度,与时间关联,计算每一帧的时间差)
  • 尽量多利用画布的save、translate、rotate、restore方法。

点击试玩

下载

https://files.cnblogs.com/ambar/BeeGame.7z

https://github.com/ambar/Invader

@2011-10-09 试玩中是旧版。我重写了一遍,保存在 github 上了
posted @ 2011-03-28 18:13  ambar  阅读(602)  评论(0编辑  收藏  举报