Render.ru

Наложение 2ух прозрачных текстур.

ххх ххх (xxx)

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

Возникла сложность c наложением 2 ух прозрачных текстур друг на друга.
Требуется оперировать прозрачностью и цветом каждой текстуры, однако все потуги приводили к каким то неправильным результатам. Если кто в теме, подскажите пожалуйста.
xxx.png xxx4.jpg test.png
 

Вложения

  • 3,5 МБ Просмотров: 194

DeletedCube

Знаток
Рейтинг
30
#2
С шейдером, конечно, беда получилась. Видно, что ты запутался в какой-то момент и дальше понесло...
Скажу о неточностях в твоем шейдере:
shader_mistakes.jpg

1. Тут чаще используют выход цвета.У тебя текстура использует альфу, но я бы сделал черно-белую текстуру. Сейчас использовать выход цвета не получится, потому что у тебя текстура технически черная полностью с прозрачностью.
2. Объект, откуда берется UV указывать не обязательно. По умолчанию берется объект на котором материал. К тому же у тебя тут указан очень странный меш.
3. Ты типа смешиваешь шейдеры, но даешь только один. Не надо так. По сути, он у тебя смешивает один шейдер с абсолютно черным цветом.
4. Нода Add shader весьма специфична и ее редко используют, потому что она искажает результат и делает его менее реалистичным. Потому что при складывании света появляется лишний. То есть стекло, в данном случае будет излучать часть света. Что не хорошо.
5. При таких настройках Mapping, эта нода лишняя и ничего не делает. В общем-то говоря и Texture Coordinate тоже не обязательна, если ты не меняешь текстурные координаты или используешь другие UV-координаты и т.п.
6. Про текстуру я уже сказал, что лучше бы ч/б маска. Еще скажу, что текстура как-то маловата и детализацию можно бы увеличить.


Теперь в каком виде это стоило бы сделать. Смотри, у тебя зада сделать на объекте два материала, которые смешиваются по маске. Значит, все правильно, в Mix Shader идут два шейдера: один для основного стекла, другой для стекла черного. В качестве фактора подается текстура. Простой шейдер стекла - это Glass и Glossy и фактор для них это Fresnel. Смысл в том, что чем острее угол к поверхности, тем больше стекло будет отражать и меньше пропускать света. Цвет следует менять у шейдера Glass. Я добавил картинку для примера.
shader_sample.png
 
Последнее редактирование:

ххх ххх (xxx)

Пользователь сайта
Рейтинг
2
#3
Falseowl, спасибо большое за развернутый ответ.
Попробовал сделать по вашей рекомендации, но к сожалению конечного результата не достиг (может быть я просто несколько глуп и чего то не понял)
Получается следующее:
1. Текстуры обе чб, цвет контролируется параметрами шейдера diffuse. Пробовал добавить цветную, без вариантов :(
2. Понял. Меш, да, там ошибочный поставлен, но роли оказывается не играет.
4. Принял к сведению, спасибо.
5. Маппинг брал сугубо по туторам, в последствии им немного правил расположение текстуры.
6. Там модификатор solidity многое портит (надо с ним покопаться) без него текстура более менее смотрится.

К чему пришел, в общем то сделал 2 варианта, они по факту идентичны, ваш и исходный свой, но оба всего лишь позволяют менять цвет рамки вокруг стекла. Солнцезащитную наклейку не пложу ума как сделать редактируемой по цвету и прозорачности.

ps texture checker выдал какой то безумный результат, и текстуру я к нему так и не смог прилепить.
xxx1.png xxx2.png yyy1.png yyy2.png
 

DeletedCube

Знаток
Рейтинг
30
#4
Ну, давай так. Ты пока разбираешься с нодами шейдера. И я советую изучить основы сначала. И посмотри какие-нибудь другие уроки на тему стекла.
http://www.chocofur.com/6-shadersamptextures.html

Кроме того, есть сайт Blend Swap. Зарегистрируйся, если тебя там еще нет. Там можно бесплатно качать некоторое количество моделек. Или материалов.
http://www.blendswap.com/blends/sea...r_engine=Cycles&sort=downloads&direction=desc
Посмотри там варианты цветных стекол. Скачай, изучи, примени на практике.

И я использовал ноду с checker просто для примера работы текстуры, потому что, как мне кажется, там проблемы и в ней то же.
 
Сверху