Что-то явно не так в датском королевстве… Все элементы на месте, но элемент Surface
- черный, а элемент Oren-Nayar - показывает образец шейдера. Вывод логичен - необходимо подсоединить выход из одного брика ко входу из другого, что мы мышкой и делаем, после чего сразу же тыкаем в картинку на Surface:
Вот, собственно, и все. Окинем взглядом имеющуюся диспозицию:
В правом верхнем углу окна имеем специальную область просмотра результатов рендеринга. Достаточно выбрать мышкой из списка чего-нибудь нешарообразное, например, чайник (teapot) и кликнуть в эту область - и сразу появится большое превью, с которым можно делать всякие разностиб например, смотреть по каналам RGB или установить рендеринг не всей картинки, а только ее части. В общем, имеется в наличии некий мутант, собранный из возможностей fcheck, it и других просмотрщиков.
Для продвинутых. Чтобы prman мог рендерить сразу в окно ShaderMan, мне пришлось написать специальный display driver, который затем переписывался еще не раз, в том числе полностью - для Entropy, которая не поддерживала стандартные драйвера дисплея.
Внизу под областью просмотра у нас - набор параметров шейдера, настройки для preview и специальные редакторы для RIB-кода (некий аналог RIBbox из MTOR). В самом низу окна - консоль, в которую рендереры выводят статусную информацию: иногда полезно поглядывать в это окошко, чтобы вовремя обнаружить возможные ошибки при рендеринге.
А мы, тем временем, через меню View отключаем все эти навороты и остаемся с голым рабочим столом программы. При помощи контекстного меню добавляем новый брик: fractal/ fractal. Присоединяем его выход к входу Kd OrenNayar. Кстати, о Kd. Везде, где только можно было, я старался придерживаться стандартных имен параметров шейдеров, которые приняты на практике, например, Kd это коэффициент диффузии. Но в определенный момент, столкнувшись с вопросами новичков, в особенности пришедших из MAYA HyperShade, я придумал опцию View => Friendly Shader Parameters, которая дает параметрам шейдеров более дружественные и понятные имена:
Кроме визуального, а-ля HyperShade, режима редактирования шейдеров, в ShaderMan реализован еще один режим, a la Slim. Дабл-кликните (это в смысле - дважды) на любом брике, например, на достославном Oren-Nayar:
Далее все работает почти как в Slim - прямо из этого окна можно присоединять новые элементы, смотреть на результаты на различных стадиях в общем, каждый выбирает свой метод редактирования шейдера.
Каким образом результат нашей работы можно использовать в MAYA? Собственно в MAYA почти никак, потому что конечным результатом работы в ShaderMan является шейдер SL. Кроме этого, вы можете экспортировать темплейты Slim, и уже их непосредственно подключать к MTOR. Либо экспортировать специальные файлы для Liquid - и использовать их. Ну и, наконец, можно отрендерить шейдер в текстуру, которую затем подсасывать в майские шейдеры.
На этой мажорной ноте придется оборвать наше повествование. Я много чего не рассказал вам о ShaderMan. Например, о маркинговом меню (идея которого, когда я впервые увидел ее в продуктах Alias, поразила меня до глубины души). Или о потенциальной расширяемости программы, основанной на простом структурированом текстовом формате XML и усиленной языком программирования Tel. Или о встроенной поддержке более чем десятка Renderman-совместимых рендереров и легком добавлении новых (опять с помощью волшебного слова - правильно: XML). Или о дружелюбности продукта, которую способны оценить новички, и, одновременно, его мощности для опытных пользователей (я тоже раньше думал, что это почти нереально). Или про…