Render.ru

Проблемы с инверсией карты

Alex Victories

Пользователь сайта
Рейтинг
4
#1
Всем привет!

Решил инвертировать карту смещения (displacement) текстуры кирпичной стены. Вот сам дифуз:

1.jpg

При наложении карты смещения выдавливание цемента между кирпичами происходит наружу:

2.jpg

Это и понятно, т.к. эти участки более светлые. Есть два решения: либо исправить в фотошопе, либо, что проще, в 3Ds Max-е. Раньше я так и делал, и на уровне карты смещения в свитке Output ставил галочку напротив пункта Invert. В общем сработало и сейчас, кирпичи красиво выдавились, но... Стороны куба почему-то разъехались в разные стороны.

3.jpg

Такого раньше небыло. Подскажите друзья, как это исправить?
 

ЛМА

Смотритель
Рейтинг
1 181
#2
Стороны куба почему-то разъехались в разные стороны.
Надо использовать модификатор вирей дисплайс мод. Кидаете туда инстансом свою карту дисплайса из карт материала, в материале отключаете дисплайс (снимаете голочку). В модифкаторе функцией амоунт выставляете величину выдавливания, а функцией Shift в минус величину отката плоскостей, т.е. задвигаете их обратно, плоскость остается на месте, выдавливаются только кирпичи.
 

Alex Victories

Пользователь сайта
Рейтинг
4
#3
Надо использовать модификатор вирей дисплайс мод. Кидаете туда инстансом свою карту дисплайса из карт материала, в материале отключаете дисплайс (снимаете голочку). В модифкаторе функцией амоунт выставляете величину выдавливания, а функцией Shift в минус величину отката плоскостей, т.е. задвигаете их обратно, плоскость остается на месте, выдавливаются только кирпичи.
Спасибо! Я сделал, как Вы сказали, но получилось не совсем то, что планировалось:

4.jpg

Выдавились стены, а не кирпичи. Amount и Shift изменил.

Ну да ладно. Вопрос в том, что я никогда не пользовался модификатором дисплайса, а всегда работал только в Редакторе Материалов. И при этом нормально работал Invert. Почему он сейчас не работает корректно? Можете подсказать в чем дело?
 

ЛМА

Смотритель
Рейтинг
1 181
#4
Выдавились стены, а не кирпичи. Amount и Shift изменил
Shift порегулируйте, по моему вы его слишком в минус сделали отчего у вас стены внутрь уехали.

И при этом нормально работал Invert. Почему он сейчас не работает корректно? Можете подсказать в чем дело?
Я не очень понял что у вас не работает. Кирпичи не в ту сторону выдавливаются? Ну так поменяйте у величины дисплайса (или бампа) знак с плюса на минус, тогда они у вас выдавятся наружу. и никакой инверт самой карты не нужен.
Да, а сама карта дисплйса (которую вы инвертировать не можете) у вас монохромная или цветная? Должна быть монохромная. Черно-серо-белая например. Или любого другого однородного цвета.
 
Последнее редактирование:

Alex Victories

Пользователь сайта
Рейтинг
4
#5
Дифузная карта:

dif.jpg

Дисплейс:

disp.jpg

Дисплейс - градиент серого, все как положено.

Но если Вы посмотрите на карту дисплейса, то увидете, что цемент между кирпичей более светлый, следовательно именно он и будет выдавливаться. Мне нужно либо в фотошопе сделать его темным, либо в 3Ds Max-e. В 3Ds Max-e это решалось в подслое самого дисплейса в свитке Output по средством галочки Invert. Этот пункт инвертировал входящий поток, то есть то что должно выдавливаться - оставалось не изменным, то что должно оставаться неизменным - наоборот выдавливалось. Это тоже, что сделать инверсию в фотошопе. Все сработало, и кирпичи выдавились, у меня к этому претензий нет, т.е. инверсия отработала корректно. Вопрос в том, почему "стены" бокса разъхались по сторонам?

3.jpg

В фотошопе я уже инвертировал цвета и сделал карту какую мне надо. Но я не хочу оставлять вопрос не решенным, и выяснить, почему в 3Ds Max-e при корректно работающей инверсии "разваливается" объект на куски?
 
Рейтинг
200
#6
Вопрос в том, почему "стены" бокса разъхались по сторонам?
Инверт тут вообще не причём,
это нормальный трабл дисплейсмента
сколько его помню всегда такой трабл был, который решается сугубо настройками модификатора,,
а что вы хотите если он выдавливает всё наружу например, как ему не потянуть все гранни в разные стороны и не разорвать их?
я бы делал сугубо чёрно белую карту так чтоб кирпичи не выдавливались, а выдавливался только шов,,
- но, всё равно на таких углах могут быть свои приколы,
 

Alex Victories

Пользователь сайта
Рейтинг
4
#8
Taмaбраxama Терен Тамабрахама (Tamabraxama) сказал(а):
это нормальный трабл дисплейсмента
сколько его помню всегда такой трабл был, который решается сугубо настройками модификатора
Добрый вечер! Хм, честно признаться, такое встречаю впервые.

Taмaбраxama Терен Тамабрахама (Tamabraxama) сказал(а):
а что вы хотите если он выдавливает всё наружу например, как ему не потянуть все гранни в разные стороны и не разорвать их?
Я бы с Вами согласился, если бы не сделал до этого эксперимент. А именно.

Я сделал вот такую карту дисплейсмента в фотошопе (инверсия цвета):

disp2.jpg

Поставил в Редакторе Материалов в слот дисплейсмента - ожидаемо выдавились только кирпичи:

5.jpg

А теперь момент истины. Если поставить галочку Invert, то должны вновь "развалиться" стены, но... Все отработало как надо, и просто выдавился цемент, а не кирпичи. И что самое важно, без всякого "развала" стен!

6.jpg

Следовательно, это уже "баги" макса. Не может же быть, что карта с белыми кирпичами и черным цементом работает как надо (с инверсией и без онной), а карта с черными кирпичами и белым цементом при включении инверсии работает с "уничтожением" объекта.
 

ЛМА

Смотритель
Рейтинг
1 181
#9
Я сделал вот такую карту дисплейсмента в фотошопе (инверсия цвета):
что бы кубик не разрывался в карте дисплейса должны быть радикально черный или радикально белый. Черный цвет дисплейс понимает как "ноль" высоты, а белый как "максимум". Соответственно, если у вас швы радикально черные, то они вообще не будут выдавливаться, т.е. грани останутся на месте, а выдавливаться будет все, что светлее черного, т.е. кирпичи. В вашем примере (где все сработало) у вас швы как раз черные, потому и не было разрыва кубика и можно было инвертировать карту. А в том случае где разрыв был у вас карта дисплейса серая, светло-серая и темно серая. там у вас нет радикально черного и этот ваш серый макс понимает как некую высоту на которую надо выдавить плоскость, вот она у вас и отрывается. И тут инвертируй, не инвертируй, ни черного, ни белого все равно не будет. Вам нужна карта дисплейса, где все швы будут радикально черные (ну или радикально белые, тогда надо будет инвертировать карту в максе).
Вообщем все дело в отсутствии радикального черного или белого в швах.
 

Alex Victories

Пользователь сайта
Рейтинг
4
#10
ЛМА сказал(а):
Благодарю за разъяснение! Непонятно почему столь логичное решение не пришло мне в голову. Наверное потому, что одна голова хорошо, а две лучше.) Для чистоты эксперимента сделал карту с белыми швами - действительно, как Вы и сказали, работает и с инверсией и без, так что теперь благодаря Вам могу закрыть этот вопрос. Крайне Вам признателен!

Taмaбраxama Терен Тамабрахама (Tamabraxama) сказал(а):
Вас также благодарю за интерес к моей проблеме и участие!

Спасибо друзья и хороших вам выходных!
 
Сверху