Я делаю игру, в которой использую несколько ObjectAnimators. Но их скорость различается в зависимости от того, на каком устройстве запущена игра. И это утомительно, потому что это как бы ломает геймплей игры.
Например, между Sony Xperia Z3 и Huawei P8lite Huawei будет отображать анимацию намного быстрее, чем Sony. Что не имеет смысла, так как экран Huawei имеет меньшее разрешение. (сравнение спецификаций)
Так что я начинаю думать, что в этом есть что-то большее. Например, может быть FPS или ppi/dpi...? Я не знаю...
Я нашел эту тему: Скорость анимации на разных устройствах, но в ней нет четкого ответа.
Пример кода, используемого в моей игре:
ObjectAnimator anim = ObjectAnimator.ofFloat(this, View.X, this.getX()+120, this.getX()-120);
anim.setInterpolator(new LinearInterpolator());
anim.setDuration(600);
anim.start();
Почему анимации, созданные с помощью ObjectAnimator, имеют разную скорость при использовании на разных устройствах, но сохраняют одинаковое расстояние и продолжительность, если это не связано с разрешением? Как я могу это исправить?