Brushing up on some procedural texturing. It's been a while since I did stuff like this, so I'm a bit... rusty. 8D
seen from United States
seen from China

seen from United States
seen from Canada

seen from United States
seen from Iraq
seen from United States
seen from Chile
seen from Bangladesh
seen from Sri Lanka

seen from Sri Lanka
seen from China
seen from Spain

seen from United States

seen from United States
seen from Brazil
seen from United States
seen from United States

seen from Australia
seen from Spain
Brushing up on some procedural texturing. It's been a while since I did stuff like this, so I'm a bit... rusty. 8D
Текстурирование руками программиста
Привет!
Хочу поделиться знаниями, которые могут кому-нибудь пригодиться. Предупреждаю: вступление длинное, дабы отсеять людей, которым статья просто не нужна. Ремарки о грамматике и пунктуации приветствуются. Стоит пояснить название, что если вы - художник, то текстурировать вы будете руками программиста, который писал ПО, которым вы воспользуетесь.
И так, для кого статья: - для программистов, которые ищут художника, для реализации графической части своей готовой, или только запланированной игры, и совершенно не слышали о процедурном текстурировании, или не "попробовали" себя в этом безумно интересном деле. - для художников/дизайнеров, сталкивающихся со сложностями в создании современных наборов текстур (bump, normal, specular, metalness, curvature, albedo ~= diffuse, color (разметка материалов), object-space maps), или попросту бесшовных текстур.
I. Процедурное текстурирование. Проще говоря: создание текстур, программными, "автоматическими" методами. Наверняка вы слышали о нем, и может даже пробовали ( если вы - программист) писать генераторы шума Перлина, или диаграммы Вороного, но не думаю, что самописные генераторы способны удовлетворить современным меркам качества, требованиям реализма и т.д. Потому, остается только стороннее решение. Если вы - художник, пропускайте следущий текст, и переходите сразу к пункту II. Для начала: - Выберите стилистику (условные примеры: Sci-Fi + фотореализм, Фэнтези + Casual Cartoon, Top-down + Дарк Фэнтези) - 2D или 3D? - есть ли у вас освещение ( в 2D оно тоже бывает, и смотрится очень даже хорошо ), отражения, сложные графические техники, требующие определенного типа текстур ( в 2D с освещением normal map, как мне кажется, must have. А современная 3D игра в фотореализме уже неторт без normal + specular на каждом листочке каждого кустика минимум) - Если 3D - есть ли у вас 3D модели и, упаси господи (простите, я агностик, наверное ), анимация к ним? Если нет - текстурирование хоть и очень важно, но вторично в вашем случае, закрывайте вкладку, ищите ( или создавайте ) 3D модели и ( самое, на мой взгляд, сложное ) анимацию. - Вы владеете базовыми навыками фотошопа, слышали о масках, альфа-канале и т.д. ?
Если вы прошли эти пункты, и еще здесь, значит в этой статье вы почерпнете для себя что-то новое, что вам наверняка пригодится.
Если вы - 3D-моделлер, вы наверняка видели в своем 3D-редакторе ( Blender, 3ds-Max, Maya ) генератор текстур. И как вам качество? Мне кажется что возможности довольно узкие, или порог вхождения не стоит результата, каждую текстуру придется собрать самому, и потратить на каждую отдельную кучу времени и сил.
Зато у вас есть некоторое преимущество над программистами и художниками, если у вас есть исходная high-poly и low-poly модель, вы сможете получить все необходимые карты для работы, например, в ddo ( Object-space map, base normal map, ao map, curvature map и т.д.)
II. Преимущества?
*Если найдется статья, из которой я узнал основы о procedural texturing, она будет здесь*
Кратко из статьи: Плюсы генерированных текстур: + Бесшовность + Гигантские размеры ( до 64к ) + Готовые наборы многих видов текстур ( diffuse + normal + specular + metalness и т.д. ) + Внесение правок во все виды текстур одновременно + Легкость и скорость создания ( нарисовать от руки в любом случае сложнее и дольше, как не крути ) + Множество вариантов одной текстуры ( в Filter Forge при 1 рандомном компоненте = 30к вариантов ) + Вариативность вдоль самой текстуры ( очень полезно в мегатекстурах ландшафта ) + готовая покадровая анимация
минусы: - большой размер => требуют много памяти - гиперреализма достичь довольно трудно, но вполне возможно ( P.S. да, ddo не генерирует с нуля, я в курсе ) - Генерировать на лету - просто не выгодно, или невозможно ( сугубо личное мнение ) - Рендеринг текстур жрет много ресурсов - Сложность в освоении ПО, алгоритмов, техник
Что легко создать с помощью процедурных текстур, а что сложно? Сильно зависит от стилистики, возьмем сложную задачу - фотореализм, фентези ( много органики ).
Легко: - Материал предмета, преимущественно неорганический (метал, дерево, камень, кожа, ткань, краска, шпаклевка, асфальт, бетон, лава) - Некоторые отдельные части живого существа ( зубы, глаза) - Многие виды частиц ( Particles ), в готовом виде (электрические дуги, облака, вспышки, огонь, дым ) - Колейдоскопо-подобные картины, некоторые виды фракталов и другие основанные на паттернах текстуры - Составные части ландшафта ( земля с камешками, травой, валяющимися листьями, снегом или песком ) - Космические тела, и космические ландшафты
Работая в ddo/Quixel Suite : - Современные текстуры материалов, со всеми необходимыми видами текстур, с потертостями и ржавчиной, беспорядочной, по всей площади
имея Color map: - Комплексную текстуру, в которой может быть одновременно пластик, кожа, метал, камень и т.д. А царапины все еще беспорядочны, в рамках каждого материала
еще базовую normal map: - Можно выбрать готовый комплексный материал, и "потертости" ( мелкие детали, вторичный материал ) будут там же, где и на превью-модели
имея high-poly исходник 3д модели, разбитую на объекты, покрашенные в цвета, соответствующие Color map, и low-poly модель, в размере 1 к 1 к high-poly, object-space map, base normal map, occlusion map: - Всё, что угодно ( в рамках библиотеки материалов, которую можно расширить самому )
Работая в Filter Forge : - Всё, что есть в библиотеке, и вашего владения данной программой. для художников: включая пост-обработку изображений, например: пикселизация,дождевые капли
имея лицензионную версию FF (Filter Forge), и зная XML или пользуясь любительским GUI : - Рендерить множество текстур подряд, в простонародии - Batch processing, включая покадровую анимацию ( рендер карт в духе diffuse + normal и так доступен в professional trial и pirated версиях )
Владея масками в фш и созданием фильтров в FF : - очень широкие возможности ( маски + фильтры FF )
III. Программное обеспечние
- ddo, входящий в Quixel Suite.
( субъективно ) Самое современное ПО для создания полного набора текстур. Делаете фотореализм? Вам сюда.
- ndo2, так же входящий в Quixel Suite.
( так же ) Лучшее ПО для создания normal map из фото, или из ничего, или конверсии между картами. Есть diffuse, нужны normal, specular и т.д. ? Вам сюда.
- Substance Designer
ПО, для генерации материалов, материалы совместимы с Unity3D и UE 3-4. Знаком крайне поверхностно, низкая производительность в купе с сложностью в основах сильно оттолкнули.
- Filter Forge
ПО, автоматизирующее операции, возможные в PS(Photoshop, уровни, контраст, маски, RGB-операции), и оборачиваюшее всё в Node-программирование. для генерации с нуля, в основе есть: шум Перлина, диаграмма Вороного и еще с 5ку других алгоритмов, с гибкими настройками, базовые 2д примитивы, моделирование освещения, система партиклов, работа с несколькими исходниками в одном фильтре, bezier и заготовленные кривые, циклы, multisamling, antialiasing, поддержка multicore-процессоров. Важное преимущество FF - большая библиотека готовых фильтров, доступных даже из trial версии, лучшие из которых вы найдете здесь
многие частичные задачи можно решить с помощью filter forge, например, я написал фильтр, "сшивающий" 3 текстуры ( делает их бесшовно-стыкуемыми между собой ) и создает на их основе случайный атлас, со всеми наиболее необходимыми тайлами, подробнее в описании и примеры готовых атласов на форуме.
Всё зависит от поставленной задачи, ваших навыков / знаний / опыта в FF и в процедурном текстурировании в общем. Ежедневно ставят низкоуровневые, но комплексные задачи, приходится много работать в PS, Action слишком накладно и муторно записывать, или ищете ....... текстуру или пост-эффект ? Вам сюда.
Все мои фильтры для FF
Пока что всё. Всем удачи в творчестве и труде.