如何在box2d的侧视flash游戏中做慢动作效果

时间:2013-04-27 05:38:39

标签: actionscript-3 flash box2d

当我正在制作侧视自行车特技游戏,其中我试图在自行车表演特技时添加慢动作效果。 在Box2D中是否有任何解决方案可以显示这种慢动作效果。在这方面有人可以帮助我

谢谢和问候,

Chandrasekhar的

2 个答案:

答案 0 :(得分:0)

使用或不使用Box2D来实现此效果的简单方法是升级时间修饰符。

所以我们假设您将播放器移动到这样的运行函数中:

player.x += vel_x;
player.y += vel_y;

您可以设置一个初始化为1

的时间修饰符变量
var time_mod:Number = 1;

然后更新所有动作

player.x += vel_x * time_mod;
player.y += vel_y * time_mod;

然后当你想要“慢动作效果”改变你的time_mod变量。实时的一半将time_mod更改为0.5。如果你想超级速度改为2或3,超慢?改为0.3

你明白了吗?

答案 1 :(得分:0)

如前所述,改变时间步长可以产生慢动作效果。它还具有改变重力影响身体的方式的副作用,并且可以使其他事情复杂化,例如在多人游戏中记录重播或同步状态。

另一种选择是对每个时间步使用固定的时间步长,并跟踪所有物体的先前位置和角度。然后,您可以在最后一帧和当前帧之间进行插值,以在中间帧位置绘制它们。这意味着你总是在物理引擎的当前位置上稍微落后一点,但是在30-60fps的典型帧率下它不应该是明显的。