Phaser 3补间不透明度?
Phaser 3 tween opacity?
我正在尝试将精灵从一点补间到另一点,并让它在移动时逐渐消失。我试过这个:
const tween = game.tweens.add({
targets: [log.sprite],
x: fire.x,
y: fire.y + (fire.height * 0.2),
opacity: 0,
duration: 300,
repeat: 0,
onComplete() {
destroyLog(log);
resolve();
},
});
但这行不通。我很难找到适合 Phaser 3 的 API 文档,所以我不确定应该在哪里寻找这些信息。
您可能应该使用 alpha
而不是 opacity
。下面是 Phaser3 的工作示例。开始和结束值 lambda 只是为了灵活性。我猜你可以直接用值替换它们。 this
指的是 Phaser.Scene 个实例。
this.add.tween({
targets: [sprite],
ease: 'Sine.easeInOut',
duration: 1000,
delay: 0,
x: {
getStart: () => startX,
getEnd: () => endX
},
y: {
getStart: () => startY,
getEnd: () => endY
},
alpha: {
getStart: () => startAlpha,
getEnd: () => endAlpha
},
onComplete: () => {
// Handle completion
}
});
您可以通过在本地克隆 repo 并在代码中搜索一些关键字,轻松找到 Phaser 3 的有用用法示例。
我正在尝试将精灵从一点补间到另一点,并让它在移动时逐渐消失。我试过这个:
const tween = game.tweens.add({
targets: [log.sprite],
x: fire.x,
y: fire.y + (fire.height * 0.2),
opacity: 0,
duration: 300,
repeat: 0,
onComplete() {
destroyLog(log);
resolve();
},
});
但这行不通。我很难找到适合 Phaser 3 的 API 文档,所以我不确定应该在哪里寻找这些信息。
您可能应该使用 alpha
而不是 opacity
。下面是 Phaser3 的工作示例。开始和结束值 lambda 只是为了灵活性。我猜你可以直接用值替换它们。 this
指的是 Phaser.Scene 个实例。
this.add.tween({
targets: [sprite],
ease: 'Sine.easeInOut',
duration: 1000,
delay: 0,
x: {
getStart: () => startX,
getEnd: () => endX
},
y: {
getStart: () => startY,
getEnd: () => endY
},
alpha: {
getStart: () => startAlpha,
getEnd: () => endAlpha
},
onComplete: () => {
// Handle completion
}
});
您可以通过在本地克隆 repo 并在代码中搜索一些关键字,轻松找到 Phaser 3 的有用用法示例。