Изменение качества изображения после замены OnGUI на плашку

Общие вопросы о Unity3D

Изменение качества изображения после замены OnGUI на плашку

Сообщение lol 17 мар 2012, 15:34

Как вы боретесь с тем, что если рисовать текстуру допустим во весь экран не через OnGUI, а через плашку, то качество изображения уже не много не такое, каким оно было бы с OnGUI.

Вот пример. Оба изображения из одной текстуры. Текстура сама "GUI", вид фильтрации Point. Но первое изображение рисуется через GUI.DrawTexture, второе - плашкой на весь экран(камера - орто). Картинки были сохранены в png, так что качество не потеряно.

Изображение

Изображение

Разница видна там, где не прямые участки, например в нижней части зонтика справа. На первый картинке он такой ровный, а на второй - уже ступеньки видны.
lol
Старожил
 
Сообщения: 508
Зарегистрирован: 15 ноя 2009, 10:48
Откуда: Москва

Re: Изменение качества изображения после замены OnGUI на плашку

Сообщение gnoblin 17 мар 2012, 16:10

потому что сейчас плашка не выводится пиксель в пиксель

на плашках можно выводить текстуры без потери качества, это уже обсуждалось на форуме

если вкратце - надо правильно настроить масштаб и размер ортографической камеры (с перспективной камерой тож можно - но это уже немного другой вопрос),
если использовать билинейную фильтрацию в случае движущихся плашек (для статических можно point), то нужно дополнительно сдвигать плашку на полпикселя - тогда не будет мазаться.
skypeid: madkust
Мои крайние проекты:
Убойный Хоккей
Cube Day Z (альфа)
Аватара пользователя
gnoblin
Адепт
 
Сообщения: 4633
Зарегистрирован: 08 окт 2008, 17:23
Откуда: Минск, Беларусь
Skype: madkust
  • Сайт

Re: Изменение качества изображения после замены OnGUI на плашку

Сообщение DbIMok 17 мар 2012, 16:40

правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.7k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: Изменение качества изображения после замены OnGUI на плашку

Сообщение lol 17 мар 2012, 20:28

Спасибо за ссылки!

Вот сейчас:
+ Текстура под размер плашки - есть
+ Size камеры(ортографической) равен половине высоты разрешения - есть
+ Текстура - Point - есть

Если по ссылкам пройтись, то осталось только попробовать сдвинуть на полпикселя. Это значит сдвинуть плашку по x и y на 0.5 ? Камера на старом месте при этом. (примера, который по ссылке по личке отсылался, наверное, уже нет ни у кого?:) )
lol
Старожил
 
Сообщения: 508
Зарегистрирован: 15 ноя 2009, 10:48
Откуда: Москва

Re: Изменение качества изображения после замены OnGUI на плашку

Сообщение DbIMok 17 мар 2012, 20:57

lol писал(а):Текстура под размер плашки

текстура должна быть Power of Two размера
lol писал(а):Size камеры(ортографической) равен половине высоты разрешения

это только для того, чтобы 1 в мировых координатах = 1 пикселю

итого, у нас есть атлас POT размера (например 1024х1024). в нем есть наша текстура у которой пиксельные координаты x,y и какой-то размер. если камера у нас настроена правильно, то мы по этим размерам создаем mesh. остается рассчитать UV по координатам текстуры в атласе, добавить смещение если нужно.
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.7k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: Изменение качества изображения после замены OnGUI на плашку

Сообщение lol 17 мар 2012, 21:04

Понятно. Спасибо.

Только вот это:
текстура должна быть Power of Two размера

уже не так..:( и делать так не хочется..
lol
Старожил
 
Сообщения: 508
Зарегистрирован: 15 ноя 2009, 10:48
Откуда: Москва

Re: Изменение качества изображения после замены OnGUI на плашку

Сообщение DbIMok 17 мар 2012, 21:11

тогда не удивляйтесь артефактам ) если вы просмотрели ссылку до конца, вывести NPOT текстуру на плашке 1в1 у меня не получилось.
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.7k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: Изменение качества изображения после замены OnGUI на плашку

Сообщение lol 28 мар 2012, 22:16

Возвращаясь к варианту pot текстуры:)

Если есть текстура 1024x1024, но вывести надо только ту часть, что 1024x768 в это же разрешение.

Рисую квад 1024x768. Вешаю текстуру с учетом изменения текстурных координат по Y. Point фильтрация. Считаем, что камера настроена правильно. Вроде ничего не забыл?
lol
Старожил
 
Сообщения: 508
Зарегистрирован: 15 ноя 2009, 10:48
Откуда: Москва

Re: Изменение качества изображения после замены OnGUI на плашку

Сообщение DbIMok 28 мар 2012, 22:30

мы используем bilinear и при любом реальном разрешении работаем в мировых 1024х768. минусы такого подхода - влияние соседних пикселей в атласе по краям выводимой области. приходится при создании атласа делать зазоры. в остальном да, все правильно.
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.7k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05


Вернуться в Общие вопросы

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

Сейчас этот форум просматривают: Google [Bot] и гости: 10