Глава II. Малые разделы нодов В этой маленькой главе я хотел бы уделить внимание самым малочисленным разделам библиотеки нодов. А именно: Output [Аутпут] (Выход), Layout [Лэйаут] (Расположение), Script [Скрипт] (Скрипт), и Group [Грууп] (Группа). Ничего сложного в понимании назначения и функционала представленных в них элементов нет. И так, давайте посмотрим. Output (Выход) В этом разделе мы увидим три нода: World Output [Уорлд аутпут], Lamp Output [Лэмп аутпут] и Material Output [Материал аутпут]. Все они предназначены для того, чтобы мы могли увидеть на рендере итог всех наших манипуляций с нодами, их настройками и комбинациями последовательности. World Output (Выход «Мира») Специальный нод, для вывода на рендер визуальной информации о том, каким должно быть окружение в нашей сцене. Работая с этим нодом, мы можем подать информацию на два канала: Surface (Поверхность) и Volume (Объем). На первый канал подается информация создающая основу среды: ее цвет и, соответственно, излучаемый ей свет. Делается это с помощью уже упомянутого шейдера Background. Взаимодействие с другими нодами не даст никакого эффекта. А вот через шейдер Background мы можем проводить все желаемые действия по формированию среды для нашей сцены. Канал Volume позволяет нам создавать такие эффекты как туман, дым, облака, замутненный воздух, а так же конус света, падающий из окна или от лампы. Lamp Output (Выход лампы) Нод предназначенный специально для источников света. Как уже говорилось ранее, все ИС имеют по умолчанию в материале 2 нода: Emission и, собственно, Lamp Output. Интересно, что данный нод МОЖЕТ быть использован для вывода на рендер материала от объектов не являющимися источниками света, как если бы мы использовали для этого нод Material Output. Но в то же время не способен, как и все остальные работать с шейдером Background. В силу того, что никаких «туманных» и «объемных» эффектов не требуется от источников света (по понятным причинам) у него есть только один входной канал Surface. Material Output (Выход материала) Из всего малого семейства Output, этот нод самый многофункциональный. Как понятно из названия, его прямое назначение – отображение на рендере материалов, объектам сцены. Из новых элементов мы видим здесь только входной канал Dusplacement (Смещение). Назначение этого канала завключается в создании на рендере эффекта изменения формы поверхности с целью создания визуально более естественных деталей. Так же важно отметить, что действие входа Volume на данном ноде выхода интерпретируется иным способом. Layout (Расположение) В этом разделе содержатся элементы, служащие для организации системы нодов, которые участвуют в формировании материала объекта. Сами по себе нодами они не являются. Элементов всего два: Frame [Фрэйм] (Рамка) и Reroute [Рероут] (Переназначение). Frame (Рамка) Первый элемент позволяет нам объединять ноды в группы с целью более удобной навигации в редакторе нодов. К примеру, когда вы хотите отделить группу нодов, отвечающих за цвет материала от нодов, отвечающих за формирование бампа (Bump). Добавить данный элемент можно как все остальные (через сочетание Shift+A/ «Т» панель редактора нодов), а так же выделив минимум один нод и нажав сочетание клавиш Ctrl+J. Вокруг выделенного нода появится контур с надписью Frame. Чтобы добавить в «рамку» дополнительные ноды, нужно всего лишь перетащить их в область внутри рамки. Удаляется рамка простым нажатием клавиши X или Delete. Если выделить рамку с нодами внутри и еще один нод, не находящийся внутри рамки, и нажать Ctrl+J, то вокруг рамки и нового нода будет создана еще одна рамка, управляющая перемещением всего, что находится внутри. Если же мы выделим только ноды, находящиеся внутри рамки, не выделив саму рамку, и попытаемся присоединить новый нод, то мы увидим, что вокруг всех выделенных нодов будет сформирована новая рамка, а старая останется пустой. Reroute (Переназначение) Этот элемент представляет собой всего лишь точку разветвления проводников, соединяющих входные и выходные каналы данных нодов. Да, можно просто раз за разом вытягивать из выходов нодов новые и новые проводники, но тут мы имеем риск запутать самих себя при построении структуры. Для предотвращения этого и существует этот элемент. Кроме обычного способа, его можно добавить в схему методом «разрезания» нужного нам проводника. Для этого зажмите клавишу Shift и прочертите линию, пересекающую нужный проводник, удерживая левую клавишу мыши. Сделав то же самое, но с зажатой клавишей Ctrl, мы «отрежем» провод разорвав соединение нодов. Group (Группа) Этот раздел нодов примечательна тем, что в нем нодов нет… И в то же время,, в процессе работы с проектом, он может стать самым многочисленным. Дело в том, что в редакторе нодов Cycles render’a есть возможность объединить ноды в группы выполняющих те или иные функции в образовании материала… Да, вы скажете (или подумаете): «А нафига нам тогда нужен элемент Frame? Он ведь тоже соединяет ноды в группы»! Однако, эти группы имеют несколько отличий от Frame групп: 1. Будучи созданными, эти группы могут принять участие в формировании других материалов. Все такие группы автоматически попадают в раздел Group. Важно помнить, что изменение группы в одном материале, повлечет ее изменение и в другом, где она используется. Чтобы предотвратить нежелательные изменения там, где это не нужно, достаточно, после установки группы в новый материал, всего лишь сделать группу уникальной. 2. В отличии от Frame, Group автоматически минимизируется до состояния одного нода, в котором указывается имя группы (которое Вы опять же можете изменить при необходимости). Нажатием клавиши Tab мы, как и во вью порте, можем переходить от «объектного» режима к режиму редактирования. При переходе в режим редактирования мы увидим, включенные в группу ноды, входной и выходной каналы данных для всей группы. В зависимости от нодов, входящих в группу, и от необходимости создать тот или иной визуальный эффект, количество этих каналов может быть разным. Нод Group в объектном режиме Создать группу нодов Вы можете выделив нужные ноды и нажав сочетание Ctrl+G. Или, выбрать в T-панели раздел Group и далее пункт Make group (Создать группу). Нод Group в режиме редактирования Script (Скрипт) Раздел, так же содержащий всего один нод: Script. Он очень интересен тем, что в своем изначальном состоянии не имеет ни входа ни выхода. *Что лично меня сначала немного повергло в ступор… Все дело в том, что этот нод предназначен специально для работы с Open Shading Language (OSL)/Открытый язык шейдинга (затенения - кому как больше нравится). В изначальном виде мы увидим в ноде две клавиши Internal (Внутренний) и External (Внешний) и строку выпадающего меню выбора скриптов. Для того, чтобы в этом ноде мы увидели все, нужные нам элементы, нам нужно использовать скрипт материала. Этот скрипт можно создать в самом Blender’е (во встроенном текстовом редакторе), или использовать созданный ранее файл с расширением «.OSL». Если мы хотим использовать второй вариант, мы должны нажать в ноде кнопку External. Мы увидим, что Нод Script: строка выпадающего меню выбора скриптов изменится на режим «Internal» строку с кнопкой, открывающей поиск файлов для операции. Если же мы хотим использовать скрипт материала уже написанный в самом Blender’е, тогда мы, соответственно, оставим режим Internal. И тогда в выпадающем списке выберем нужный нам скрипт. И вот, как по волшебству, наш нод преобразится: будет и вход и выход и параметры, запрограммированные Вами (ну, или не Вами) и его можно будет без проблем использовать для работы в дереве нодов материала. Нод Script: режим «External» Этот нод уникален тем свойством, что он позволяет Вам создавать свои уникальные по составу параметров ноды, которые Вы можете сохранить в виде «.OSL» файлов и использовать в любое время и модифицировать по своему усмотрению. Ниже Вашему вниманию представлены примеры применения данного нода на практике. Автор скрипта, второго и третьего рендеров - Korchy (участник форума Blender3D.org.ua) Нод «Script» с использованием скрипта, написанного в текстовом редакторе Blender’а Пример использования нода «Script» Итог тестовой визуализации нода «Script»