Размеры спрайтов и камеры для 2D игры

Программирование для iPhone & Android

Размеры спрайтов и камеры для 2D игры

Сообщение Raphael 30 май 2019, 20:08

Какой размер спрайтов использовать для тайлов мобильной 2D игры (RPG) с видом сверху? Сейчас использую 400x400. Не слишком ли это большой размер для производительности на слабых смартфонах?
И второй вопрос, как настроить камеру, чтобы на устройствах с большим разрешением (планшетах) на экран помещалось больше тайлов? Нашел вот такой скрипт PixelPerfect:
Синтаксис:
Используется csharp
public class PixelPerfect : MonoBehaviour {
    public int refHight;
    public int PPU;
    // Use this for initialization
    void Start() {
        int PPUScale = Math.Max(Screen.height / refHight, 1);
        //camera.orthographicSize = Screen.height / (float)(PPUScale * PPU) * 0.5f;
        var cinema = GetComponent<Camera>();
        if (cinema !=null)
        {
            cinema.orthographicSize = Screen.height / (float)(PPUScale * PPU) * 0.5f;
        }
    }
}

Но на мобильных устройствах он работает неправильно: на экранах с маленьким разрешением всё становится еще мельче.
Raphael
UNец
 
Сообщения: 1
Зарегистрирован: 30 май 2019, 19:36

Re: Размеры спрайтов и камеры для 2D игры

Сообщение Kabanelloo 04 авг 2019, 22:51

Какой размер спрайтов использовать для тайлов мобильной 2D игры (RPG) с видом сверху? Сейчас использую 400x400. Не слишком ли это большой размер для производительности на слабых смартфонах?


Лучше подходить к решению задачи с другой стороны, сразу думать о производительности это плохо )) Возьмите максимальное разрешение на мобильном устройстве, допустим планшет 10+ и сделайте себе вашу текстуру того разрешения, чтобы выглядело оно прекрасно.
Правильно упакованные текстуры - спрайты в атласы, не создают помех в производительности. 512 разрешение вполне адекватное, оптимизировать ниже - это как бы вам даст прирост+ 2% , но вы потеряете качество.

что по камере, у вас если не генерируемая карта, то можно сделать обычную ортографическую + включить окклюзию на объекты, чтобы их отсекало в момент выхода из поля зрения, даже банальный скрипт заменяющий динамическую окклюзию типа https://docs.unity3d.com/ScriptReference/MonoBehaviour.OnBecameInvisible.html события отвечающее за видимость объктов.

Удачи)
Kabanelloo
UNITрон
 
Сообщения: 163
Зарегистрирован: 03 фев 2012, 21:55
Откуда: Kaliningrad/Crimea


Вернуться в iPhone & Android

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2