Render.ru

file as projection+alfa+color_mix

dimdiden

Знаток
Рейтинг
21
#1
Ломаю голову, и пока ничего не выходит., помогите с одним вопросом.

Задача такая - просто шар, на нем нужно спроектировать текстуру (файл, например желтый круг, он предварительно сохранен с альфой в формате tiff). Таким образом шар не нужно разворачивать, делать снапшот и т.д. и есть возможность контролировать цвет самого шара в окне майки.

Пытаюсь реализовать так:
1. Способ
Создаю ламберт кидаю на сolor - file, as projection, играю с 3d placment чтобы проекция файла устраивала. Кидаю эту же проекцию на transparency дабы убедиться что альфа работает - получаю желтый круг на шаре, все остальное прозрачно. Значит работает.
Создаю ментал ноду mib_color_mix. out color этой ноды кидаю на color нового шайдера mia_material.
В mib_color_mix провожу такие движения: color 0 - это получается и есть будущий базовый цвет шара - просто крутим цвет, на color 1 - кидаю проекцию файла (от тестируемого ламберта уже откличили, про него не вспоминаем). В hipershyder проверяю эту связь - оказывается соединились одновременно две связи out_color projection c color 1 ноды mib_color_mix и out_alfa_projection (подозреваю что это и есть альфа проекции) с color 1A mib_color_mix.
Дальше играюсь с режимами смешивания ноды mib_color_mix - bland, add, multiply ну и т.д. И вот тут начинаются проблемы - результат смешивания ни один не подходит, т.к. альфа вроде не работает (в файле с желтым кругом альфы не видит, и получается я как бы смешиваю с обычной текстурой "жетый круг на белом листе").

2. Способ
Вместо mib_color_mix пытаюсь работать по старинке с Layer shader.
В принципе тот же самый результат, в Layer shader вообще выбора режима смешивания нет, все похоже в режиме multiply.

Итак: как сделать проекцию файла с альфа каналом на объекте и основной цвет объекта контролировать в майке?

П.С. понимаю что просится ответ "разверни ты тот шар, нарисуй текстуры и не мучай людей глупыми вопросами", но все же меня это зацепило. Ведь если надо "побыстрому" сделать наклейку на бутылке, номер на двери машины и т.д. без муторной развертки - можно пользоваться проекцией, просто разобраться с этой альфой!

Помогите, заранее спасибо!
 

Bad Sid

Активный участник
Рейтинг
15
#2
http://www.creativecrash.com/tutorials/layered-texture-tutorial#tabs
вот собственно мануал по вопросу который вас интересует.
Плюс в Той самой книге (Понимая мая) был пример когда на мячик наносят логотип команды. Там показана и то что вам интересно и собственно метод использования 2 UV на одном объекте. Удачи.
 

DemX86

Активный участник
Рейтинг
18
#4
А заброс отдельного файла с черно-белой альфой на параметр weight ноды mib_color_mix не прокатывает?
 

dimdiden

Знаток
Рейтинг
21
#5
А заброс отдельного файла с черно-белой альфой на параметр weight ноды mib_color_mix не прокатывает?
я этого не пробовал! Обязательно гляну.

И еще. Вот сделал итоговый материал. Объект имеет, естественно свою 3d placement ноду, которая точно указывает где моя "наклейка". Как размножить объект? Ведь если обычные ctr+d, то копируется сама геометрия и отдельно сама нода. Но вновь созданная нода не имеет всех тех связей, которые меня привели к конечному результату. Таким образом что бы размножить этот объект, надо сначала его экспортнуть, а потом сколько хочешь объектов - столько и импортов надо сделать. При этом с каждым вновь добавленным объектом, добавляется и свой материал.

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

dimdiden

Знаток
Рейтинг
21
#6
А заброс отдельного файла с черно-белой альфой на параметр weight ноды mib_color_mix не прокатывает?
Только что попробовал - результата нет. Причем
В hipershyder проверяю эту связь - оказывается соединились одновременно две связи out_color projection c color 1 ноды mib_color_mix и out_alfa_projection (подозреваю что это и есть альфа проекции) с color 1A mib_color_mix.
 

DemX86

Активный участник
Рейтинг
18
#9
При этом с каждым вновь добавленным объектом, добавляется и свой материал.
Ну по идее так и должно быть, ведь place3dTexture нода для каждой разной наклейки должна быть своя собственная.

Таким образом что бы размножить этот объект, надо сначала его экспортнуть, а потом сколько хочешь объектов - столько и импортов надо сделать.
Еще можно на каждый новый объект вручную назначать материал при помощи Hypershade > Edit > Duplicate > Shadind Network. Тогда материал будет копироваться с сохранением имеющихся связей.

Короче такой вид "наклеивания" ужасно редкий, и скорее всего никто им не пользуется. Скорее всего постоянно рисуются текстуры на весь объект и никто не заморачивается.
Я тоже так думаю.
 
Сверху