精灵和补间有什么区别?你什么时候在游戏开发中使用其中一个?我正在制作游戏而无法找到关于两者差异的良好解释。
答案 0 :(得分:1)
精灵是一个可视组件。角色,敌人,收藏品或抛射物都是精灵的例子;至少在视觉上。
Tween 是之间的的缩写,并且更多地处理两个状态之间的插值。补间由计时器,插值函数以及开始和结束状态组成。补间的一些示例包括:颜色之间的渐变,两个角度之间的旋转以及两点之间的运动。
简而言之,补间是一种动态创建两个状态之间的所有步骤以实现动画的方法;它本质上具有时间成分。与精灵相反,精灵基本上只是一个图像。
我们在melonJS中使用一个名为Tween.js的流行补间库 - 他们的示例应该很好地理解补间的用途:https://github.com/tweenjs/tween.js/#examples
melonJS将sprite和补间作为单独的类提供。 me.Sprite
和me.Tween
。 Sprite是将图像绘制到屏幕的对象的基类之一;一个示例子类是me.AnimationSheet
,它简化了在图像之间翻转以创建翻书式动画的任务。
除了作为公共API之外,melonJS中的补间内部有一些用途;使用补间创建场景转换(淡入淡出为黑色等等)。
我在一些melonJS游戏中使用了补间。 Sprung Fever中的滑动门是使用补间创建的。以下是代码:https://github.com/blipjoy/sprung_fever/blob/834b6ad27e45bf2a8fa80894ad12ddfa5b35aa2a/public/js/entities/door.js#L21-L29