Полезное

Мы Вконтакте

Discord канал

#
Модератор: Di-Crash
Аватара пользователя
Пользователь
Сообщения: 244
Какое-то время я программировал двухмерную графику. Поскольку требуется поддерживать различные варианты мониторов и мобильных устройств, требуется следить за тем, чтобы не происходило такого, что на каком-то устройстве виден полный "экран" программы, а на каком-то только центральная его часть. Приходилось рескейлить объекты при возможности. Во всяком случае, вся моя работа относительно этого упиралась в основные две переменные/константы: SCREEN_WIDTH & SCREEN_HEIGHT, которые возвращали мне размер экрана и далее я уже пропорционально размещал объекты интерфейса на экране.

С UE я не очень понимаю, кто этим должен заниматься? Движок или вручную? Если движок умеет что-то в этом плане делать - как он обрабатывает подобные ситуации с разными разрешениями экранов? Рескейлит как получится или отрезает невместившиеся части?
Аватара пользователя
Администратор
Сообщения: 1581
Рескейлить должен. Он будет вам отображать все, что в камере. Он будет обрезать только при разных соотношениях. Так что вы тут уже должны в зависимости от соотношения сторон считать, а не от размера.
_________________
Просьба, не писать вопросы по движку в ЛС. Я не единственный, кто знает UE4, и поэтому пишите на форум или в группу.
Аватара пользователя
Пользователь
Сообщения: 244
Flakky писал(а):
Рескейлить должен. Он будет вам отображать все, что в камере. Он будет обрезать только при разных соотношениях. Так что вы тут уже должны в зависимости от соотношения сторон считать, а не от размера.

Понятно. По сути, он берёт на себя всю самую сложную часть работы. Класс. Мне нравится этот движок всё больше и больше :)
Аватара пользователя
Пользователь
Сообщения: 244
Ещё уточнить хочу. Получается, что в UE правильнее использовать не относительные координаты, а абсолютные? Т.е. например: передвинуть дверь на X = 100, Y = 257, Z = 38 - явно и указывать на сколько передвинуть дверь. Или вводить какие-то собственные относительные обозначения? Как вы в продакшне делаете?

Кстати, а вообще в UE можно получать значение разрешения текущего экрана? Я понял, что соотношения он сам обрежет нужным образом. Не очень понятно, как именно он HUD обрежет, если он будет от верха до низа на моём экране, а у кого-то экран меньше именно в соотношениях сторон, что движку прийдётся отрезать. Как худ размещать, он же откромсает кусок важной информации :) Всё-таки, иногда нужно использовать относительные координаты, динамические размеры, чтобы на этапе загрузки приложения разместить худ правильно?

Для меня это дико, если честно :) всю жизнь программировал учитывая размер экрана, никогда не используя абсолютных координат, всегда обсчитывал всё динамически, а тут всё движок за тебя делает. Очень непривычно. Но приятно. Хочется, как бы, не увлечься и не нарубить дров раньше времени, чтобы, по возможности, вы оградили от такой ошибки.
Аватара пользователя
Тех. администратор
Сообщения: 367
Если по поводу 3D графики - это (рескейл) входит в графическое API, так что читайте, к примеру, про OpenGL (3.3+).


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

UEngine.ru © 2017
Все права защищены. При копировании материалов с сайта, ссылка на первоисточник обязательна.
Яндекс.Метрика
Главная страница