Что делать если низкий ФПС после билда под андроид?

Пробую сделать 2D игру, в компьютере фпс стабильный, но как только я переношу всё на андроид фпс понижается до 30 кадров примерно. Весь интернет обшарил, никакого рабочего способа не нашёл.

  1. Я всё пишу в FixedUpdate
  2. Пробовал менять FixedTimestep
  3. Писал в код: Application.targetFrameRate = 60; QualitySettings.vSyncCount = 0;

Мой код движения для игрока:

transform.Translate(Vector2.up * speed * Time.fixedDeltaTime);

Чего ещё я не попробовал?


Ответы (1 шт):

Автор решения: Фёдор

Я решил проблему, для тех кто читает эту статью, может я чем-то смогу помочь. Я решил воспользоваться физикой, добавил RigidBody2D к игроку, поставил kinematic. В скрипте в FixedUpdate() написал следующий код для его движения:

rb.velocity = Vector2.up * speed; //здесь можно было умножить на Time.fixedDeltaTime, но я не увидел в этом нужды

Далее я написал строчку в Start() в скрипте персонажа (наверное эту строчку нужно писать в каждом скрипте, но я не уверен):

Application.targetFrameRate = 60;

И после билда всё было отлично, внезапно появилось плавное движение. Но колхозный ли этот способ?

→ Ссылка