作者自己算是个有技术情结的人吧,还有点钻技术的牛角尖,看到有人用C++或者python语言编写的带动画的2D程序,总想了解下这到底是怎么实现的。下面的动画技术总结主要是针对《C语言游戏编程从入门到精通》这本书的总结。
需要说明一下,这里都是针对2D动画的简单技术
动画技术分类
其中重画技术又进一步进行了细分
重画技术
重画技术分为全屏重画和局部重画
上图和下图介绍了全局重画和局部重画的使用场景,python等编程语言实现的精灵动画属于文件重画。
直接重画
直接重画就是直接写屏幕显存
缓冲技术
缓冲技术可以只针对单个小区域
调色板技术
拉屏技术
子画面技术 VS 局部重画
这里需要注意的是子画面重画技术需要提前保存好要放入子画面位置的背景图像