Specular, displacement карты для шейдеров

Шейдеры и все-все-все.

Re: Specular, displacement карты для шейдеров

Сообщение gnoblin 23 окт 2011, 19:43

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

Re: Specular, displacement карты для шейдеров

Сообщение seaman 23 окт 2011, 19:44

ЛОД - заменяет меш на более простой. Можно заменять и материал на более простой. Никто не запрещает.
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Specular, displacement карты для шейдеров

Сообщение gnoblin 23 окт 2011, 19:48

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

Re: Specular, displacement карты для шейдеров

Сообщение Yukio 23 окт 2011, 20:16

gnoblin писал(а): нет, мы наверное путаем понятия. В альфа канале дифуза содержится информация о том что блестит - что нет. Например белый пиксель дает самый сильный блик, черный пиксель не дает блика вообще.

А если нужно, чтобы белая поверхность не блестела, а блестела только черная? например, листок белой бумаги со свежей чернильной кляксой.
gnoblin писал(а):нет, при удалении объекта никакой материал не оптимизируется и никакие текстуры не выгружаются - работает только мипмапинг

виноват не досмотрел - это у меня тени отключались на определенном расстоянии, а они тоже текстурную память потребляют. Блин, аж самому смешно. Лохонулся я, извините. 8-|
gnoblin писал(а):С расчетами размера тоже косяк - вот дифуз и спекуляр в случае двух текстур, там сколько каналов в каждом?

Диффуз и спекулар - 2 текстуры DXT1 RGB
Yukio
UNIт
 
Сообщения: 60
Зарегистрирован: 07 дек 2010, 00:28

Re: Specular, displacement карты для шейдеров

Сообщение gnoblin 23 окт 2011, 20:32

Yukio писал(а):
gnoblin писал(а): нет, мы наверное путаем понятия. В альфа канале дифуза содержится информация о том что блестит - что нет. Например белый пиксель дает самый сильный блик, черный пиксель не дает блика вообще.

А если нужно, чтобы белая поверхность не блестела, а блестела только черная? например, листок белой бумаги со свежей чернильной кляксой.


В rgb канале дифузной текстуры может быть любой цвет, хоть розовый - цвет поверхности с реакцией на блики никак не связан.

Yukio писал(а):
gnoblin писал(а):С расчетами размера тоже косяк - вот дифуз и спекуляр в случае двух текстур, там сколько каналов в каждом?

Диффуз и спекулар - 2 текстуры DXT1 RGB


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

Re: Specular, displacement карты для шейдеров

Сообщение Yukio 23 окт 2011, 20:46

gnoblin писал(а): А зачем в спекуляре три канала?

не знаю - сделал DXT1 т.к. жмет хорошо. А сколько там каналов быть должно?
Yukio
UNIт
 
Сообщения: 60
Зарегистрирован: 07 дек 2010, 00:28

Re: Specular, displacement карты для шейдеров

Сообщение gnoblin 23 окт 2011, 20:57

ну вот есть вариант
1) текстура rgb(diffuse)+a(specular)
и
2) текстура rgb(diffuse)+rgb(specular)

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

Re: Specular, displacement карты для шейдеров

Сообщение waruiyume 23 окт 2011, 21:06

Yukio писал(а):А если нужно, чтобы белая поверхность не блестела, а блестела только черная? например, листок белой бумаги со свежей чернильной кляксой.

Какой цвет блестит?
У вас нет доступа для просмотра вложений в этом сообщении.
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Specular, displacement карты для шейдеров

Сообщение Yukio 23 окт 2011, 21:15

waruiyume писал(а): Какой цвет блестит?

Черный ^:)^
Блин, не могу понять как это сделать. Для этого любой графический редактор подойдет?
Yukio
UNIт
 
Сообщения: 60
Зарегистрирован: 07 дек 2010, 00:28

Re: Specular, displacement карты для шейдеров

Сообщение waruiyume 23 окт 2011, 21:23

Любой, который умет редактировать альфа каналы. (Фотошоп)
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Specular, displacement карты для шейдеров

Сообщение PetkaGtA 23 окт 2011, 22:17

вообще дам совет по оптимизации пользуйтесь такой функцией
Спекуляр = дот( карта спекуляра( три или четыре канала, в каждом своя цветовая карта в черно-белом виде ), вектор4( ставьте значения вроде ( 1(красный канал),0(зеленый канал),0(синий канал),0(альфа канал) ) ) ) * интенсивность спекуляра;
это занимает меньше памяти нежели если бы вы пользовались текстурой черно-белой у которой в каждом канале одно и тоже
PetkaGtA
UNIт
 
Сообщения: 81
Зарегистрирован: 09 сен 2010, 10:05

Re: Specular, displacement карты для шейдеров

Сообщение seaman 23 окт 2011, 22:32

Вообще, если хорошо понимаешь шейдеры, можно очень прилично поиграть с каналами. Например у любой правильно сделанной нормал карты синий канал просто залит серым. Поэтому его можно для чего-то использовать, а в шейдере просто восстановить верное значение синего канала подсунув нужную константу (правда тут проблема - как уговорить Юнити правильно воспринять такую нормал карту). Можно несколько серых карт объединить в одну DX1 карты, а в шейдере каналы использовать в нужном месте. В УДК в редакторе материалов я легко такое делал - объединял в одну DX1 текстуру спекуляр, дисплейс и карту деталей. А в шейдере каждый канал использовал в нужном месте.
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Specular, displacement карты для шейдеров

Сообщение gnoblin 24 окт 2011, 07:12

PetkaGtA писал(а):вообще дам совет по оптимизации пользуйтесь такой функцией
Спекуляр = дот( карта спекуляра( три или четыре канала, в каждом своя цветовая карта в черно-белом виде ), вектор4( ставьте значения вроде ( 1(красный канал),0(зеленый канал),0(синий канал),0(альфа канал) ) ) ) * интенсивность спекуляра;
это занимает меньше памяти нежели если бы вы пользовались текстурой черно-белой у которой в каждом канале одно и тоже

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

Пред.

Вернуться в Shader Lab

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

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