Среда, 21 Ноября 2018, 17:52

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Программирование » C/C++ » Как делают изображение одинаковым на разных разрешениях
Как делают изображение одинаковым на разных разрешениях
afqДата: Среда, 07 Ноября 2018, 18:52 | Сообщение # 1
Разработчик
Сейчас нет на сайте
Не помню уже, создавал ли я эту тему на этом сайте. Вот например игра на unity, когда запускаешь её, она выдает окно, в котором выбираешь разрешение экрана, в котором хочешь запустить игру. Запустив игру на любом разрешении, картинка не меняется. Как это можно сделать не пойму? Для разных разрешений делать разные картинки или как то по другому?

видео покер в 3d для android ссылка
летающая птица для android ссылка
DivESДата: Среда, 07 Ноября 2018, 21:28 | Сообщение # 2
Blender 2.49b user
Сейчас нет на сайте
afq, в каком смысле "картинка не меняется"? Качество? Масштаб?
TLTДата: Среда, 07 Ноября 2018, 21:36 | Сообщение # 3
Сейчас нет на сайте
Картинку растягивать на 100% ширины и высоты, для меню делать координаты относительными и т.д.

Дао, выраженное словами, не есть истинное Дао.
DivESДата: Среда, 07 Ноября 2018, 21:36 | Сообщение # 4
Blender 2.49b user
Сейчас нет на сайте
afq, да и как же картинка не будет меняться? Если всё сделано правильно, то с увеличением разрешения экрана будет увеличиваться показываемая область карты (при этом элементы HUD должны оставаться на своих местах).
Если же сделано не очень правильно, то с увеличением разрешения экрана изображение будет растягиваться (а его качество станет хуже).
Картинка меняется в любом случае :)


Сообщение отредактировал DivES - Среда, 07 Ноября 2018, 21:37
afqДата: Среда, 07 Ноября 2018, 22:41 | Сообщение # 5
Разработчик
Сейчас нет на сайте
DivES, масштаб, вот например запусти игру while learn true, кнопки меню будут одного размера при 1024x768 и при 1920x1080.

видео покер в 3d для android ссылка
летающая птица для android ссылка
DivESДата: Четверг, 08 Ноября 2018, 20:37 | Сообщение # 6
Blender 2.49b user
Сейчас нет на сайте
Цитата DivES ()
Если всё сделано правильно, то с увеличением разрешения экрана будет увеличиваться показываемая область карты (при этом элементы HUD должны оставаться на своих местах).

Цитата afq ()
масштаб, вот например запусти игру while learn true, кнопки меню будут одного размера при 1024x768 и при 1920x1080.

Разве мы написали не об одном и том же?
coremissionДата: Четверг, 08 Ноября 2018, 23:47 | Сообщение # 7
частый гость
Сейчас нет на сайте
Цитата afq ()
Запустив игру на любом разрешении, картинка не меняется

Вообще - меняется
Если ты говоришь о 3D - то дело в том как вообще графика в игре устроена - модельки на сцене, скайбокс,- все это растеризуется. Разницу можно заметить если текстуры плохого качества, или нет мип-уровней, или в разрешении которое ты изменишь - изменится и аспект (соотношение сторон)
afqДата: Пятница, 09 Ноября 2018, 00:24 | Сообщение # 8
Разработчик
Сейчас нет на сайте


Вот я например делаю игру игровой автомат, мне что, для каждого разрешения нужно отдельные картинки рисовать?


видео покер в 3d для android ссылка
летающая птица для android ссылка
Animan2010Дата: Пятница, 09 Ноября 2018, 00:58 | Сообщение # 9
постоянный участник
Сейчас нет на сайте
afq, я обычно делаю таким образом:
Есть объект, у него текстура, координаты Х, Y и размер W, H.
Размер устанавливаю относительно размера родительского объекта, ну если таких нет, то относительно экрана, типо:
SetSize(1.0f, 1.0f) - размер равный размеру экрана
SetSize(0.5f, 0.5f) - четверть экрана
А вообще рекомендую так скейлить относительно одной стороны, тогда пропорции не будут меняться независимо от формата экрана, типо:
ScaleToWidth(0.5f) {
w = parent.w * 0.5f; // ширина равна половине ширины родителя
h = texture.h * w / texture.w; // высота изменяется пропорционально изменению ширины
}
То есть, допустим размер экрана 800х400, размер текстуры 300х300, тогда ScaleToWidth(0.5f) приведет к
w = 800 * 0.5 = 400
h = 300 * 400 / 300 = 400
То есть все правильно растянулось, и это не будет зависеть ни от размера экрана, ни от формата


Anima Games
Animan Publishing
afqДата: Пятница, 09 Ноября 2018, 01:19 | Сообщение # 10
Разработчик
Сейчас нет на сайте
Animan2010, а я тут понаделывал. Блин, я уже забыл как текстурой выводить, это значит что экран ortho выставлять в ( 1.0, 1.0 ) и тому подобное да? Так как я с текстурой как то были проблемы, я тогда незнал ещё о GL_BLEND ( о прозрачности ), и начал делать через glVertexPointer и glColorPointer. А надо блин с текстурой значит да?

видео покер в 3d для android ссылка
летающая птица для android ссылка
Форум игроделов » Программирование » C/C++ » Как делают изображение одинаковым на разных разрешениях
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2018 Рейтинг