我想渲染这张卡,在它第一次加载时,动画开始一次。我想要的是默认没有动画发生。有谁知道怎么做到这一点吗?
class Card extends AnimationComponent {
Card(width, height)
: super.sequenced(width, height, 'card.png', 5,
textureWidth: 144.0, textureHeight: 220.0, loop: false);
} class GameScreen extends BaseGame {
GameScreen({@required this.size}) {
add(Card(0,0));
}
}发布于 2020-04-24 11:39:51
根据source code,您将能够使用Animation来控制框架。
为了简单起见,只要不调用update并保持渲染,帧索引就不会被更新。
void update(double dt) {
clock += dt;
elapsed += dt;
if (isSingleFrame) {
return;
}
if (!loop && isLastFrame) {
onCompleteAnimation?.call();
return;
}
while (clock > currentFrame.stepTime) {
if (!isLastFrame) {
clock -= currentFrame.stepTime;
currentIndex++;
} else if (loop) {
clock -= currentFrame.stepTime;
currentIndex = 0;
} else {
break;
}
}
}所以你可以直接重写update方法来获得对精灵动画的控制。
https://stackoverflow.com/questions/61400449
复制相似问题