https://git.oschina.net/dreamyouxi/MMOGame
不同角色方向的动画切换问题
2D MMO 的游戏视角一般为 8 方向或 16 方向,对应的动画也有相同数量方向的帧动画序列。
如果每个方向的动画默认都从第一帧开始播放,玩家在随意走动时就会出现衔接问题。例如,向上走播放到第 2 帧,玩家突然转向左走,此时如果上走的第 2 帧与左走的第 1 帧在视觉上不连贯,动画表现就会显得很糟糕。
解决方案
- 方案一:在设计帧动画时,让每个方向每个动作的任意帧都能互相衔接。这种做法理论上可行,但实现难度很高。
- 方案二:在切换方向时,不从第 1 帧开始,而是直接跳转到目标帧次播放。这要求每个方向的相同帧次能够互相衔接,各方向的帧数可以不同。
方案二相对容易实现:程序层面只需直接跳转到目标帧次播放(若各方向帧数不同,跳转算法可根据帧动画资源动态调整);帧动画设计上只需保证同一方向内的帧序列能连贯起来即可。