Текст книги "Дизайн интерьеров в 3ds Max 2008"
Автор книги: Андрей Шишанов
Жанр: Программы, Компьютеры
сообщить о неприемлемом содержимом
Текущая страница: 7 (всего у книги 12 страниц)
Подключаемые модули для текстурирования
Иногда при работе над интерьером возникает необходимость корректного наложения текстур на достаточно сложный объект. Чаще всего это различного рода мягкая мебель – диваны, пуфики, стулья классических стилей и прочие элементы, к которым непросто применить стандартные приемы наложения текстур. В таких случаях использование модификатора проекционных координат UVW Map (UVW-проецирование) уже не спасает положение. Безусловно, в такой мощной программе, как 3dsMax 2008, достаточно и встроенных инструментов для решения подобных задач, в частности модификатор Unwrap UVW (Развертка UVW). Этот инструмент нельзя назвать слишком сложным, но и в разряд легких решений его тоже не отнесешь. В некоторых случаях работа в нем затягивается на достаточно продолжительное время. И существуют ситуации, когда без его применения просто невозможно обойтись. Я же хочу рассказать о более простом и легком в работе инструменте, который является как бы младшим братом Unwrap UVW (Развертка UVW). Речь идет о подключаемом модуле Texporter. Его бесплатная версия для 3dsMax 2008 находится на прилагаемом к книге DVD. Этот небольшой подключаемый плагин позволяет выполнять развертку плоскостей объекта и сохранять ее в растровую карту. Установка плагина Texporter не вызывает труда. Для этого нужно запустить файл дистрибутива Texporter_v3.4.7.9_Beta2.exe и указать путь в ту директорию, где установлен 3ds Max 2008. После инсталляции плагин можно найти на вкладке Utilites (Утилиты). Сам процесс немного напоминает создание портновской выкройки для одежды, только в обратном порядке.
Предположим, есть кресло, на боковых гранях которого необходимо создать группу складок с помощью применения текстурной карты смещения Bump (Рельефность) (рис. 5.19).
Рис. 5.19. Объект-кресло, подготовленное к текстурированию
Выделите единый объект сиденья-спинки. В режиме редактирования Polygon (Полигон) с помощью инструмента отделения Detach (Отделить) свитка параметров Edit Geometry (Правка геометрии) отсоедините левую часть в отдельную форму, как показано на рис. 5.20.
Рис. 5.20. Отделение левой части объекта командой Detach (Отделить)
Поскольку кресло симметричное, то отделять таким же образом правую часть не имеет смысла. Полученная текстура корректно ляжет просто на выделенную аналогичную группу полигонов. Теперь приступим к применению плагина Texporter. Перейдите на вкладку Utilites (Утилиты) командной панели, нажмите кнопку More (Больше) и в открывшемся окне выберите строку Texporter (рис. 5.21).
Рис. 5.21. Выбор подключаемого модуля Texporter
В свитке Parameters (Параметры) настроек модуля установите разрешение конечного изображения, задав следующие значения параметров: Width (Ширина) – 1100, Height (Высота) – 900. Снимите флажок Edges (Ребра) в области Display (Отображать). Нажмите кнопку Pick Object (Указать объект) и укажите на ту часть кресла, которую вы отделили как левую часть. Вы получите развернутую текстурную карту с проекционными координатами (рис. 5.22).
Рис. 5.22. Развернутая карта текстур
Сохраните полученное изображение в формате JPEG с максимальным качеством и откройте его в растровом редакторе Photoshop. Поскольку для карт Bump (Рельефность) и Displacement (Смещение) не нужна информация о цвете, переведите изображение в черно-белое, выполнив команду Image → Mode → Grayscale (Изображение → Режим → Оттенки серого). Создайте новый слой и инструментом Paintbrush (Кисть) обведите шов в центре изображения. По нему вы будете ориентироваться при рисовании карты смещения (рис. 5.23).
Рис. 5.23. Рисунок линии шва в новом слое в Photoshop
Временно скройте новый слой и, вернувшись к первоначальному изображению, активируйте инструмент выбора по цвету Select → Color Range (Выделение → Цветовой диапазон). Оставив его настройки по умолчанию, выберите инструментом Sampled Colors (Образец цвета) черный фон вокруг изображения (рис. 5.24). Нажмите OK.
Рис. 5.24. Инструмент Color Range (Цветовой диапазон)
Инвертируйте полученное выделение командой Select → Inverse (Выделение → Инвертировать). Удалите выделенную область и отобразите скрытый ранее слой. Любым привычным для вас способом изобразите складки материала, идущие от линии шва к периферии (от центра к краю). Например, для этого можно использовать части изображения, полученные с помощью цифрового фотоаппарата. Я применил текстуру, которую обычно использую для карт выдавливания подушек (рис. 5.25).
Рис. 5.25. Создание рисунка складок с помощью фотографий
Доработайте средствами Photoshop текстуру до необходимого вам качества. Сведите все слои в один командой Layer → Flatten Image (Слой → Склеить изображение) и сохраните созданную карту в формате JPEG со средним качеством. Вернувшись в сцену 3ds Max 2008, назначьте ее в качестве текстуры Bump (Рельефность) выбранным полигонам (рис. 5.26).
Рис. 5.26. Назначение текстуры смещения выделенному полигону
Как видите, текстура, которую мы сделали для имитации складок ткани с помощью подключаемого модуля Texporter, вполне корректно и быстро расположилась именно там, где мы хотели назначить, а время, затраченное на подготовку в основном ушло на рисование (рис. 5.27). При наличии хорошей библиотеки различных текстур и фотоаппарата, с помощью которого библиотека будет пополняться, это время будет неуклонно сокращаться, а качество создаваемых презентаций соответственно расти.
Рис. 5.27. Назначение текстуры смещения выделенному полигону
Примечание
Итоговая сцена с текстурированным креслом находится в папке ExamplesСцены примеровГлава 5 прилагаемого к книге DVD. Файл называется Кресло.max.
Мебель с текстурами, изготовленными с помощью модуля Texporter, показана на рис. 5.28.
Рис. 5.28. Применение текстур выдавливания в интерьере
Еще одна область, где текстуры могут сослужить хорошую службу при работе с интерьерами, – это применение их в качестве «текстурного моделирования» с использованием карт Displaсement (Смещение) и создание объектов с помощью альфа-канала.
Всегда существует искушение сделать в сцене как можно больше деталей, тем более что именно наличие интересных мелочей делает картинку более привлекательной. Однако, помня о небезграничных возможностях компьютера, необходимо придерживаться при моделировании как можно меньшего количества полигонов. Если есть возможность добиться хорошего внешнего вида создаваемого объекта с помощью более детальной проработки используемых материалов, то следует придерживаться именно этого способа. Можно смоделировать детальный куст или дерево, потратить на это немало времени и ресурсов и разместить их на дальнем плане, где все многообразие форм будет нивелировано расстоянием. А можно применить более простой и нетребовательный способ создания объекта с помощью альфа-канала. Рассмотрим, как это можно сделать на примере небольшого растения.
Создайте в новой сцене в окне проекции Front (Спереди) объект Box (Параллелепипед) с параметрами 100 x 100 x 0 см (рис. 5.29).
Рис. 5.29. Создание объекта для проецирования текстуры растения
Откройте в программе Photoshop фотографию куста и любым удобным для вас методом отделите изображение от окружающего фона. Выделите полученное изображение и через буфер обмена с помощью команд Cut (Вырезать) и Paste (Вставить) вставьте его на абсолютно черный фон нового документа (рис. 5.30). Дело в том, что альфа-канал – это информация о свойствах прозрачности объекта, где черный (со значениями цветовых составляющих RGB, равными 0) воспринимается как полная непрозрачность, а белый (со значениями цветовых составляющих RGB, равными 255) – как полностью прозрачный объект.
Рис. 5.30. Фотография растения на черном фоне
Теперь необходимо создать так называемую маску-текстуру, которая сделает часть объекта полностью прозрачной. Соответственно нашему представлению о прозрачности это будет точная копия контура растения с полностью белой внутренней полостью (рис. 5.31).
Рис. 5.31. Создание текстуры-маски
Создать точную текстуру маски из фотографии реального растения достаточно непросто. Здесь в первую очередь многое зависит от фона, на котором фотографировался объект. В любом случае, без контурной обводки вручную бывает трудно обойтись. На конечном этапе, когда общее выделение происходит через однотонный общий фон (в нашем случае – черный), имеет смысл расширить выделение с помощью команды Select → Modify → Expand (Выделение → Преобразовать → Расширить). Это позволяет сместить на один пиксел выделенную область внутрь объекта и таким образом избежать появления тонкой белой рамки непрозрачности при последующем применении карты-маски. Таким образом, вы создали две текстурные карты: одна – полноцветная с изображением листвы на черном фоне, вторая – черно-белая карта-маска. Сохраните созданные карты под разными именами (рис. 5.32). В папке ExamplesСцены примеровГлава 5 прилагаемого к книге DVD находятся подходящие файлы – birchf06.jpg (изображение листвы) и birchf06-opas.jpg (карта-маска).
Рис. 5.32. Текстура листвы и карта-маска
Вернитесь снова в сцену, созданную в 3ds Max 2008, и назначьте объекту Box (Параллелепипед) стандартный материал. В канал Diffuse Color (Цвет рассеивания) назначьте созданную вами полноцветную текстуру листвы, а в канал Opaсity (Прозрачность) – карту-маску. Степень влияния (Amount (Величина)) обеих карт задайте 100 % (рис. 5.33).
Рис. 5.33. Назначение текстур каналам свойств материала
Теперь, если визуализировать объект Box (Параллелепипед) на фоне классических объектов 3ds Max – чайников, – видно, что он стал прозрачным в тех областях, где в карте-маске присутствует белый цвет, и эта область заполнена фотографией листвы (рис. 5.34).
Рис. 5.34. Прозрачность объекта после применения карты-маски
Еще раз выделите объект Box (Параллелепипед) и сделайте несколько копий, вращая его в окне проекции Top (Сверху) по оси Z. Получится вот такой «ежик» (рис. 5.35).
Рис. 5.35. Объект для объемного отображения текстуры с альфа-каналом
Группа из нескольких таких объектов уже похожа на небольшие заросли (рис. 5.36). Обратите внимание, что количество применяемых полигонов минимальное.
Рис. 5.36. Группа объектов с примененными картами прозрачности
Безусловно, у этого метода есть масса ограничений. Во-первых, он работает не со всеми типами теней. Во-вторых, угол обзора у него достаточно ограничен – при виде сверху такой объект превращается просто в тонкое перекрестие. На крупных планах искусственность такого объекта сразу бросается в глаза, поэтому имеет смысл применять его для средних и дальних планов. В-третьих, не все модули визуализации корректно и быстро работают с большим объемом текстур с альфа-каналом. Однако при всех этих недостатках можно буквально из десятка небольших по объему текстур и минимуме применяемых полигонов устроить в сцене настоящие джунгли. А если совместить это с высоко детализированными моделями растительности на переднем плане, то вполне реально получить хороший эффект при минимальных затратах ресурсов. Не зря во всех современных компьютерных играх этот способ построения объектов используется весьма широко.
Примечание
Сцена с растительностью, созданной таким способом, находится в папке ExamplesСцены примеровГлава 5 прилагаемого к книге DVD. Файл называется Сцена с имитацией растительности.max.
Еще одним очень интересным подключаемым модулем для текстурирования является бесплатно распространяемый плагин Ky_Surface Blur, написанный Павлом Кузнецовым. Вернее, это модуль не столько для текстурирования, сколько для получения свойства матового стекла быстрым и изящным способом. Поскольку в используемом нами визуализаторе V-Ray 1.5 SP1 реализация этого свойства при достаточно большой площади поверхности сопряжена с длительными вычислениями, то было бы неплохо получить этот же эффект быстро и качественно. Бесплатная версия модуля Ky_Surface Blur для 32– и 64-разрядных версий 3ds Max 2008 находится на прилагаемом к книге DVD. Модуль состоит из одного файла Ky_Surface Blur → 32.dlv для 32-разрядной версии 3ds Max 2008 и файла Ky_Surfaсe Blur → 64.dlv для 64-разрядной версии. Этот файл следует скопировать в папку plugins, находящуюся в папке, в которую установлена 3ds Max 2008. В результате модуль появится в окне Add Effect (Добавить эффект), для открытия которого следует выполнить команду Rendering → Effects (Визуализация → Эффекты) и на вкладке Effects (Эффекты) нажать кнопку Add (Добавить) (рис. 5.37).
Рис. 5.37. Подключаемый модуль Ky_Surface Blur
Рассмотрим применение этого модуля. Создайте простую сцену наподобие той, которая показана на рис. 5.38.
Рис. 5.38. Сцена для настройки модуля Ky_Surface Blur
Назначьте объекту, к которому вы хотите применить эффект размытия, материал стекла. Эффект размытия может быть виден, только если в свойствах материала будет задействован параметр прозрачности объекта. В нашем случае – это большой прямоугольник, за которым скрываются цилиндр, чайник и сфера. Визуализируйте сцену. Как вы видите, матовости на стекле пока не заметно (рис. 5.39).
Рис. 5.39. Стекло без эффекта размытия
Откройте окно настроек модуля Ky_Surface Blur. Как видно из параметров, плагин работает с каналами эффектов ID материала и ID объекта (рис. 5.40).
Рис. 5.40. Параметры модуля Ky_Surface Blur
Установите флажок Object ID (Идентификатор объекта) и назначьте номер 1. Откройте окно параметров объекта-стекла, выполнив команду контекстного меню Object Properties (Свойства объекта), и в области G-Buffer (G-буфер) также задайте параметру Object ID (Идентификатор объекта) значение 1 (рис. 5.41).
Рис. 5.41. Назначение номера ID выбранному объекту
Теперь все объекты, которым назначен этот порядковый номер G-Buffer (G-буфер), будут работать с эффектом плагина Ky_Surface Blur. Визуализируйте сцену. Теперь стекло приобрело матовость и полупрозрачность – именно тот эффект, которого мы и добивались (рис. 5.42).
Рис. 5.42. Результат применения модуля Ky_Surface Blur
Поскольку плагин работает как эффект постобработки, то есть вносит изменения уже после того, как визуализатор сформирует готовое изображение, скорость его работы значительно выше, чем при создании аналогичного эффекта при помощи настройки параметров материала стекла. В последнем случае неизбежно увеличивается время просчета. Степень размытия отражения регулируется параметрами Blur Radius on Front (Радиус размытия спереди) и Blur Radius on Side (Радиус размытия сбоку). Плагин имеет не много настроек. Попробуйте разобраться в них самостоятельно, и этот замечательный инструмент сохранит вам немало рабочего времени. Пример использования модуля Ky_Surface Blur показан на рис. 5.43.
Рис. 5.43. Применение модуля Ky_Surface Blur в интерьере
При всем богатстве инструментов, которые предлагает 3ds Max 2008, применение подключаемых модулей не только позволяет расширить функционал инструментов, но они помогают и сделать работу интереснее, красивее и при этом часто сокращают время работы над проектом. По возможности старайтесь всегда быть в курсе новинок, посещая специализированные ресурсы Интернета и общаясь с коллегами. Работа в 3ds Max 2008 чем-то напоминает игру на скрипке: чтобы всегда быть в форме, необходимо играть каждый день.
Текстурное моделирование
Возможно «текстурное моделирование» – это не совсем верное по определению понятие, но оно хорошо подходит для обозначения тех процессов, которые происходят, когда мы обращаемся к таким инструментам, как Bump (Рельефность) или Displaсement (Смещение). Cначала разберемся, в чем состоит принципиальное различие в работе этих инструментов. Карты Bump (Рельефность) придают поверхности моделируемую структуру, указывая области для «выдавливания», а визуализатор подчеркивает эту иллюзию, применяя значения света на отображаемой поверхности таким образом, что эти элементы принимают блики и отбрасывают тени. И Bump (Рельефность), и Displaсement (Перемещение) работают с черно-белыми растровыми картами, где черное значение (со значениями цветовых составляющих RGB, равными 0) принимается за нулевую отметку, а белое (со значениями цветовых составляющих RGB, равными 255), за самую большую степень смещения. Все оттенки серого обладают пропорциональным эффектом. Но если карты Bump (Рельефность) не оказывают влияния на геометрию и создают не более чем иллюзию, то инструмент Displaсement (Перемещение) влияет на изменение геометрической формы объекта самым непосредственным образом. Например, на рис. 5.44 к левому квадрату применена текстура Displaсement (Перемещение), а к правому – текстура Bump (Рельефность).
Рис. 5.44. Результат применения текстур Displaсement (Смещение) (слева) и Bump (Рельефность) (справа)
Если в случае с Bump (Рельефность) явно видна имитация рельефа (особенно это проявляется на ребрах объекта), то при использовании Displaсement (Смещение) – это вполне полноценное объемное моделирование. Безусловно, как и у любого другого метода, здесь есть свои недостатки. Карта Displaсement (Смещение) может работать только в направлении одной оси координат, то есть невозможно создать форму, где смещение будет происходить по всем трем осям. Качественная форма требует такой же качественной текстуры с достаточно высоким разрешением, что, как вы уже знаете, ведет к дополнительному расходу оперативной памяти. В некоторых случаях многократное применение карты перемещения Displacement (Смещение) приводит к значительному увеличению времени визуализации. Однако легкость изготовления сложных для стандартных приемов моделирования форм (в частности, лепных карнизов, барельефов и прочих элементов, характерных для таких стилей, как барокко, ампир и рококо) заставляет присмотреться к этому способу более внимательно. Инструмент Displacement (Cмещение) представлен в 3ds Max 2008 в виде карты материалов и модификаторов Displace (Смещение) и VRay Displaсement (Смещение V-Ray). Рассмотрим пример применения этих инструментов на практике и выполним какие-нибудь несложные формы, часто встречающиеся в работе, допустим, вазу с выпуклым узором и ковер.
Создайте новую сцену. Вазу, похожую на древнегреческую амфору, сделать несложно, применив сплайновую форму и модификатор Lathe (Вращение) (рис. 5.45).
Рис. 5.45. Модель вазы, приготовленная для текстурного моделирования
В некоторых случаях для получения более сглаженной формы вращения лучше воспользоваться инструментом NURBS-моделирования Create Lathe Surface (Создать поверхность вращения). Преобразуйте полученный объект в Editable Poly (Редактируемая полигональная поверхность). Примените к объекту любой подходящий на ваш взгляд материал. Назначьте ему уникальное имя, например ваза. Выделите ряд полигонов, как показано на рис. 5.46.
Рис. 5.46. Выделение группы полигонов на модели вазы
Скопируйте материал ваза в свободную ячейку редактора материалов и назначьте ему новое имя ваза 1. Примените новый материал к выделенной группе полигонов (рис. 5.47).
Рис. 5.47. Назначение материала выделенной группе полигонов
В настройках материала ваза 1 откройте свиток Maps (Карты текстур) и процедурной карте Displaсement (Смещение) назначьте растровое черно-белое изображение узора. Такие узоры очень удобно создавать в программе векторной графики CorelDRAW (рис. 5.48).
Рис. 5.48. Узоры, созданные в программе CorelDRAW
При необходимости их можно экспортировать в растровый формат с любым достаточным для конкретного проекта разрешением. После экспорта желательно в программе Photoshop применить к изображению фильтр размытия, например Gaussain Blur (Размытие по Гауссу), с небольшим значением радиуса (рис. 5.49). Это поможет сгладить границу перехода между уровнями смещения.
Рис. 5.49. Применение фильтра размытия к текстуре узора
Вернитесь в программу 3ds Max 2008 и при необходимости откорректируйте положение и мозаичность текстуры применением модификатора UVW Map (UVW-проецирование) (рис. 5.50).
Рис. 5.50. Настройка положения и мозаичности текстуры модификатором UVW Map (UVW-проецирование)
Уменьшите значение уровня влияния Amount (Величина) материала Displaсement (Смещение) до 3–5 единиц. Визуализируйте полученную сцену. Теперь ваза украсилась вполне настоящим рельефным изображением, при этом ее геометрия не претерпела никаких радикальных изменений (рис. 5.51).
Рис. 5.51. Ваза с рельефным узором, полученным при помощи Displaсement (Смещение)
Примечание
Итоговая сцена с моделью вазы находится в папке ExamplesСцены примеровГлава 5 прилагаемого к книге DVD. Файл называется Ваза с узором.max.
Такой вид моделирования позволяет очень сократить временные затраты на изготовление сложных объектов архитектуры и мебели со сложным лепным узором или резьбой. Безусловно, нельзя забывать об ограничениях, которые имеет этот способ и о которых мы говорили выше. Если же совместить достоинства полигонального и текстурного моделирования и основные формообразующие рельефные объекты делать полигонами, а все остальное дополнять текстурным моделированием, то всегда можно прийти к замечательному компромиссному решению, когда модель будет сделана из относительно небольшого количества многоугольников, но при этом ее внешний вид будет формировать масса мелких деталей. Такие объекты имеет смысл создавать для ближних планов сложных сцен. Для дальних же, наверное, лучше использовать менее ресурсоемкий способ, основанный на применении карты Bump (Рельефность).
В заключение главы приведу еще один способ применения Displaсement (Смещение). На этот раз создадим объемный пушистый ковер. Наверное, из всего разнообразия задач, которые можно решить, применив Displaсement (Смещение), создание пушистого ковра и травы используется чаще всего. Принципиально создание ковра ничем не отличается от создания травы, поэтому попробуем освоить этот способ как подходящий для обоих случаев.
Начните новый сеанс работы в 3ds Max 2008. Создайте объект Plane (Плоскость) с размерами 350 x 225 см. Преобразуйте объект в Editable Poly (Редактируемая полигональная поверхность). Удалите все ребра, кроме внешних. Выделите центральный полигон и примените инструмент Bevel (Выдавливание со скосом) свитка Edit Polygons (Правка полигонов) с небольшим значением. При необходимости примените к объекту модификатор коррекции текстурных координат UVW Map (UVW-проецирование) с типом проецирования Planar (Планарный), а после него модификатор VRayDisplaсementMod (Режим смещения V-Ray) (модификаторы необходимо назначать именно в такой последовательности) (рис. 5.52).
Рис. 5.52. Создание объекта для текстуры ковра
Откройте свойства модификатора VRayDisplasementMod (Режим смещения V-Ray), выберите 2D-текстурирование (Mapping) и назначьте в канал текстуры карту-маску Mask (Маска) (рис. 5.53).
Рис. 5.53. Назначение материала модификатору VRayDisplaсementMod (Режим смещения V-Ray)
Укажите значение высоты смещения Amount (Величина) равным 2 см, а Resolution (Разрешение) увеличьте до 2048 пикселов. Остальные настройки оставьте заданными по умолчанию, не забыв проконтролировать, установлен ли флажок Filter texmap (Фильтр текстур). Карту-маску составьте из двух текстур: первая – рисунок ковра, определяющий области смещения, вторая – сама текстура, имитирующая мелкий ворс ковра (рис. 5.54). В папке ExamplesСцены примеровГлава 5 прилагаемого к книге DVD находятся подходящие файлы – Текстура смещения для ковра. jpg (рисунок ковра) и STATIC2.jpg (текстура ворса).
Рис. 5.54. Компоненты карты-маски
Назначьте объекту материал и в канал Diffuse (Рассеивание) поместите точную полноцветную копию текстуры ковра. Назначьте визуализатор V-Ray 1.5 SP1 в качестве используемого в сцене. Для этого выполните команду Rendering → Rendering (Визуализация → Визуализировать), в открывшемся окне Render Scene (Визуализировать сцену) в свитке Assign Renderer (Назначить визуализатор) нажмите кнопку Choose Renderer (Выбрать визуализатор), на которой изображено многоточие. В появившемся окне выберите соответствующую строку. Визуализируйте сцену (рис. 5.55).
Рис. 5.55. Ковер с объемным ворсом
Как видите, ковер приобрел объем, что особенно заметно у основания статуэтки. Маска позволяет сделать уровень ворса разной высоты на различных участках, что соответствует более светлым и темным частям текстуры маски. Попробуйте задать другие значения параметрам модификатора VRayDisplaсementMod (Режим смещения V-Ray), и вы увидите, что это достаточно легкий, хотя и требующий достаточно долгого времени для качественной визуализации способ моделирования.
Его можно использовать не только для создания ковров и различного рода покрытий, но также для выполнения газонов с подстриженной травой при работе над экстерьерами.
Примечание
Итоговая сцена с моделью ковра находится в папке ExamplesСцены примеровГлава 5 прилагаемого к книге DVD. Файл называется Ковер.max.
Заканчивая наш разговор об использовании текстур в интерьере, хочу посоветовать вам при создании текстур штукатурок шире применять процедурные материалы, например Noise (Шум) или Speckle (Пятнышки). Они потребляют намного меньше оперативной памяти, чем другие текстуры, и при грамотном использовании позволяют существенно экономить ресурсы компьютера. Применение обширных библиотек от разных производителей, например The Essential Texture, Natural: shaders или DarkTree, добавят в вашу творческую палитру массу новых интересных решений.
Правообладателям!
Это произведение, предположительно, находится в статусе 'public domain'. Если это не так и размещение материала нарушает чьи-либо права, то сообщите нам об этом.