Animation 使用javafx的抛物线跳跃动画
我正在使用JavaFX制作一个简单的侧滚平板射击游戏。我想要一个非常简单的抛物线跳跃动画的角色。当前,角色扩展了StackPane,并生活在场景中。我被告知使用Interpolator.SPLINE进行跳跃动画,但它似乎不起作用。 目前,我有:Animation 使用javafx的抛物线跳跃动画,animation,javafx,javafx-2,javafx-8,Animation,Javafx,Javafx 2,Javafx 8,我正在使用JavaFX制作一个简单的侧滚平板射击游戏。我想要一个非常简单的抛物线跳跃动画的角色。当前,角色扩展了StackPane,并生活在场景中。我被告知使用Interpolator.SPLINE进行跳跃动画,但它似乎不起作用。 目前,我有: public void Jump(){ TranslateTransition translation = new TranslateTransition(Duration.millis(1), this); translation.in
public void Jump(){
TranslateTransition translation = new TranslateTransition(Duration.millis(1), this);
translation.interpolatorProperty().set(Interpolator.SPLINE(.1, .1, .7, .7));
translation.play();
}
但它似乎一点也不动。但是,我的其他动画命令(向左移动和向右移动)使用的是简单的平移变换。跳转函数有什么问题 您有两个问题:
- 您的转换不会移动任何东西,您需要使用插值器设置移动的位置,例如
translation.setByY(-50)代码>
是1毫秒,你看不到任何东西移动得这么快。试试500持续时间。毫秒(1)
translation.setAutoReverse(true);
translation.setCycleCount(2);
例如:
TranslateTransition translation = new TranslateTransition(Duration.millis(500), this);
translation.interpolatorProperty().set(Interpolator.SPLINE(.1, .1, .7, .7));
translation.setByY(-50);
translation.setAutoReverse(true);
translation.setCycleCount(2);
translation.play();