-
Notifications
You must be signed in to change notification settings - Fork 7.1k
Closed
Description
Version
- Phaser Version: 3.88
- Operating system: Windows
- Browser: Chrome latest
Description
Since 3.88, my animations are all running at 24 FPS despite having no frameRate set. The duration
in the framearray is ignored.
This is a direct regression of this change: a8f921b
When no frameRate is passed in animation config, it defaults to 24 FPS:
phaser/src/animations/Animation.js
Line 258 in 7d76259
target.frameRate = 24; |
So state.msPerFrame || state.currentFrame.duration
will never check currentFrame.duration because msPerFrame is set to 1000/24
Example Test Code
const durationArray = [10,20,30,40]
const frameArray = this.game.anims.generateFrameNames("test", { start: 0, end: durationArray.length - 1 })
for (let i = 0; i < durationArray.length; i++) {
frameArray[i]["duration"] = durationArray[i]
}
this.game.anims.create({ key: "test", frames: frameArray })
sprite.anims.play({ key: "test" }) // will run at 24 FPS, ignore durationArray
Additional Information
savva-k and VonAncken
Metadata
Metadata
Assignees
Labels
No labels