烟花

程序说明

  • 这是一个烟花的简单模拟程序,只考虑了重力。2D 环境。
  • 烟花分为上升过程以及爆炸过程 。
  • 使用 C++ 编写,firework 类表示烟花,其有 raise 代表上升过程,bomb list 代表的是爆炸颗粒集合。
  • 程序环境:VS2019、EasyX_20210115、C++11。

实现思路

  • 烟花的坐标就用真实世界的坐标,在绘画时候通过调整屏幕坐标方向以及缩放因子来完成坐标映射。
  • 烟花的速度以及烟花的位置每帧更新一次,每次更新基于两帧间的时间差值进行更新。
  • 绘画烟花尾部的小尾巴,我使用的是每帧对屏幕所有点的像素值进行平均。也就是把像素颜色与周围像素点颜色值求平均。

执行效果截图

源代码下载

点击这里下载源代码