Как сделать деревья в blender
Создание Деревьев с помощью Дополнения
Меня напрягает, а может я чего не понимаю и зря переживаю по этому поводу, но при создании Дерева данным способом, даже если использовать предложенные настройки по умолчанию данным Дополнением, с добавлением +1 к количеству веток, то получается, что у Дерева 35.000 вершин и 25.000 граней, и это ещё без листвы, когда добавляешь листву, становиться 60.000 вершин и 30.000 граней… Не многовато-ли? о_О
Если я правильно понимаю, то если изпользовать данную модель в игре, к примеру сделав некий парк, то игрок попав в эту парковую зону, будет играть не в стрелялку, а в пошаговую стратегию (при условии, что у него мощный компьютер)… То-есть, если поставить в парке около 30 таких деревьев, игрок попадёт в зону обработки на 1.800.000 вершин и это ещё без учёта других моделей в парковой зоне + сам персонаж + все текстуры на модели в парковой зоне…
Есть-ли вообще смысл, пользоваться этим дополнением создания Деревьев для игр?
Если я правильно прикинул, то при ручном моделировании Дерева (Добротное (Хорошее (Большое)) Дерево), получиться около от 500, до 1.000 вершин, а вместе с листвой около 2.000-3.000 вершин… Это получается в 57.000 раз меньше вершин, чем предлагает данное Дополнение…
Я конечно понимаю, что это перебор с вершинами, да ещё и какой, но мне бы уточнить этот момент, может я чего не понимаю, подскажите пожалуйста…
Есть-ли вообще смысл, пользоваться этим дополнением создания Деревьев для игр?
Очевидно же, что нет! Разве что, с последующей обработкой получившихся моделей. Но гораздо проще и качественнее изначально создать как надо, чем ретоположить то, что выдал аддон.
БлагоДарю за информацию…
Я только недавно начал познавать 3D-Блендер, теоретических знаний полный сундук, а вот практических знаний (опыта) маловато… Думал, что может есть какая-то там волшебная кнопка, которая преобразовывает сетку модели, созданную через данное дополнение, в более простую сетку… Ну, мало-ли, всякое бывает 🙂
А теперь ясно вижу, что для игр, все модели нужно делать вручную… Данный способ создания Деревьев через Дополнение Add Curve: Sapling Tree Gen, для игр не подходит, данный способ создания Деревьев, подходит для создания мультиков, фильмов и видеороликов для игр…
В тубе много видео и как для UE4 тоже есть, прям с анимацией(ветра), где очень просто вместо последнего из уровней ставятся полики с альфой, и всё! на альфе сразу ветка с листьями и ноу проблем, да и тому же уроков куча (кинул бы ссылю да интернет кастрированный на работе) именно по тонкой настройке данного аддона, и дело не в Аддоне а в руках, видел как свободно создавали массив для кисти в UE4 именно в этом аддоне, с лодами и UV’шками. Если нужна подборка уроков у меня на тубе где то валялась, хотя думаю при желании можно самостоятельно найти вбив название аддона.
truegeorg, что-то мне подсказывает что тонкая настройка не поможет, это если делать нормальное дерево, а не обрубок, после урагана )))
Моделирование реалистичных деревьев с использованием NGPlant и Blender
Этот урок научит вас моделировать реалистично выглядящую растительность в 3D, близкую к тому, что вы можете найти на сайте blender greenhouse, откуда взяты эти примеры:
В уроке будет рассмотрен только функционал программы NGPlant, и будет сказана пара слов об импорте в блендер.
Конечно, мы будем использовать только open-source ПО: ngplant для генерирования и Bender для финального рендеринга композиции (хотя часть с Blender здесь не рассматривается). Соответственно, первым шагом для вас будет установка указанных программ, в случае их отсутствия. Перечисленное ПО является мультиплатформенным, поэтому вы сможете работать в любой ОС на ваш выбор. Разумеется вы можете использовать другие приложения, поэтому мои советы будут носить общий характер. Но все же я бы порекомендовал начать пользоваться указанными программами, т.к. они являются замечательными составляющими компьютерной графики, о которых должен знать каждый.
1. НЕМНОГО ТЕОРИИ
То, что я скажу здесь — в основном понятия, которые я слышал на лекциях в архитектурной школе. Т.к. я находил это интересным, то постоянно углублялся в это. Если теория действительно скучна для вас, можете пропустить её. Но я сделаю все возможное, чтобы сделать эту часть интересной и нескучной.
Первое золотое (и вы поймете почему) правило гласит: в мире растений ВСЁ начинается с математического правила. Расположение деревьев в лесу. Расстояния между различными частями дерева разных возрастов. Расположение веток и подразделение ствола. Угол наклона веток к стволу. Размер веток, их форма. Сочетание нескольких листьев в пучке. Сложная структура цветка. Всё подчинено правилам. В моем холодильнике завалялся зеленый перец:
Он словно состоит из частей и они все следуют одному и тому же правилу: 3 главных подразделения, и каждое из них имеет промежуточное. В общей сложностью перец обладает 6-ю подразделениями. ВЫ можете видеть, что место, откуда начинаются листья перца — практически идеальный шестиугольник. Вы можете повторить это с любой другой растительностью. Даже банан имеет регулярную повторяющуюся геометрию.
Третье правило, безусловно, самое интересное, сложное и в какой то степени эзотерическое — это правило Фибоначи. Этот момент нуждается в пояснении, даже если вы не будете его использовать. Фибоначи был математиком 13-го века, открывшим интересную последовательность: создал последовательность чисел, каждый раз прибавляя к новому числу сумму предыдущих. Вы начинаете с 1, добавляете 0, это даёт 1. Далее 2, затем 2+1=3, далее 3+2=5, далее 5+3=8, итд, итп. Таким образом последовательность Фибоначи выглядит так: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657…
Выглядит не очень полезно, да? На самом деле это примитивнейший код, используемый природой в эволюции. Все растения следуют этому правилу во время роста. Сначала одна ветвь, потом другая, далее их три, потом пять…, думаю вы поняли. Если вы взгляните на растения — вы найдете последовательности Фибоначи повсюду. Этот закон определяет себя в том, как появляются листья на ветке, как организуются лепестки цветка, где возникают цветы на деревьях, и т.д.
Казалось бы, что такого? Но листья размещаются на ветви по спирали Фибонначи. Насколько мне известно, около 92% растений следуют этому правилу.
Существует одна важная вещь для нас во всем этом: повторяющиеся математические последовательности — это именно то, что компьютеры делают лучше всего! Процесс, используемый программой, чтобы воссоздать дерево очень похож на процесс, используемый в природе. Как только вы откроете какое либо ПО, генерирующее деревья, вы увидите, что его параметры тесно связаны с тем, что мы только что обсуждали выше.
Хватит теории. Если вы хотите знать больше о листорасположении можете прочитать эту отличную статью:http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/fibnat.html
2. НАБЛЮДЕНИЯ И ПОЛУЧЕНИЕ МАТЕРИАЛОВ
Если мы хотим воспроизвести дерево, так же, как когда мы хотим воспроизвести что-либо, мы должны изучить «оригинал» очень внимательно. Как вы уже поняли, для начала нам понадобятся изображения деревьев или прочей растительности, которую мы хотим смоделировать. Вы можете просто пойти в лес и сделать несколько снимков вашего любимого дерева на камеру, но, как правило, в интернете много материала, просто попробуйте поискать в Google картинках по названию вашего дерева.
Если вы не знаете названия дерева, но знаете, что она произрастает в вашей стране, путем недолгих поисков вы должны найти такие списки растений и деревьев без особых проблем. Можно искать по вегетативным признакам. Найдите изображения в хорошем качестве, так чтобы видеть и общие планы и крупные планы в деталях, чтобы можно было разглядеть цветы, плоды, кору.
В качестве примера, в этом уроке я постараюсь сгенерировать вяз. Итак, по запросу «вяз» поиск картинок выдает довольно много хороших фотографий, и, конечно страницу Википедии.
Как вы видите, я сосредоточился на фотографиях, которые показывают всю форму дерева. Верхнее по центру изображение очень ценно, потому что оно показывает форму веток очень ясно. Изображения в нижнем ряду тоже полезны, так как показывают расположение листьев.
Мы уже можем подчерпнуть многое из этих фото: общая форма, безусловно, шаровидная. Структура веток начинается толстым стволом, а потом очень длинные ветви начинаются очень рано, и идут прямо вверх, практически вертикально, затем они сгибаются, чтобы сформировать форму шара. Заметим, что «вторичные» ветви начинаются довольно поздно, далее чем на полпути. Листья также кажутся сосредоточенными на внешней части.
Обратите внимание на еще одну интересную особенность: какой из этих образцов более воздушный? Какой из них выглядит ближе к тому, что нам надо? Для меня это последний. Это старый, часто представляемый мною вид вяза, который мне нравится. Напомню что это темные деревья с толстым стволом с маленькими листьями на концах.
Наконец, обратите внимания на цвета. Похоже, есть довольно много цветовых вариаций, но мне кажется, что что-то между зеленым и желтым, в темных тонах, даст нам реалистичный вид. Мы сделаем некоторые тесты позже.
3. МОДЕЛИРОВАНИЕ: NGPLANT
Хорошо, теперь пришло время, чтобы запустить софт. Открываем ngplant. Интерфейс довольно прост. Вы можете поворачивать / панорамировать вид кнопками мыши, собственно как и выбирать / добавлять / удалять слои ветвей из списка (нижняя правая панель). Затем, вы играете с настройками выше, в полях веток. Каждый слой ветвей имеет свою «Stem» панель, которая контролирует только его параметры. Вкладка «Branching» контролирует, где потомки ветвей крепятся к своим родителям.
Вкладку «Material» мы не будем особо использовать, т.к. создадим материалы прямо в блендере. Но вы также можете сделать все материалы и отображение здесь, если хотите.
Вкладка «General» служит для создания случайных вариаций, когда наше дерево уже сделано.
Интерфейс ngplant
Итак, давайте начнем, с создания нашего толстого ствола. Я покажу вам, как параметры взаимодействуют между собой (их не так уж и много). Например, вот как получить форму толстого ствола, как на нашей картинке:
Хорошо. Сейчас внимательно взглянем на наши картинки: из ствола растет очень узкая группа основных ветвей. Они начинают расти практически вертикально, затем достигая вершины почти разворачиваются в форму «чаши».
Добавим второе поколение веток, начиная примерно с трети ствола и придавая им форму чаши.
Добавим новый слой ветвей начиная примерно с 50% высоты родителя. Регулируйте параметр min offset, чтобы ветви росли выше. Кривая Declimation поднимет ветви кверху. А вот кривая phototropism изогнет ветви до требуемой формы. Попробуйте, пока не уловите взаимосвязь. Параметром variation добавьте сотые доли. В конце увеличте density и revolution angle — таким образом вы размножите ветви по окружности всего ствола, и т.к. они станут разряженнее — компенсируете количество полем density.
Теперь мы добавляем второй слой ветвей, более тонких и спутанных, они должны смотреться более хаотично.
Добавляем новый слой ветвей, стартующих от 40% длины родителя (min offset). Немного поиграйте с declination и revolution angle. Как и в предыдущем случае изменяйте phototropism. Настройте density в соответствии с внешним видом.
Теперь вы видите, что мы могли бы пойти гораздо дальше, это дерево может получить еще пару слоев веток, чтобы иметь более хаотичный вид. Но мы также должны быть осторожны, чтобы не сделать наши деревья слишком тяжелыми для просчета. Хороший способ серьезно упростить расчеты — уменьшайте параметр Resolution в группе Cross-section. Таким образом вы уменьшите количество граней в профиле ветви, что снизит количество полигонов.
Я создал еще один слой прямо на стволе, чтобы замаскировать место между стволом и первым слоем (когда будет листья).
Теперь самая смешная часть: добавляем листья. Мы будем добавлять листья на каждый слой ветвей.
Я сделал листья куда больше, чем они есть на самом деле. Всё просто — мы не будем тектсурировать каждый листок по отдельности, вместо этого мы используем текстуры «групп листьев» и тем самым время рендеринга возрастет в разы.
4. ИМПОРТ В BLENDER
Думаю, что с импортирование obj объектов проблем возникнуть не должно.
В блендере дерево импортируется отдельными мешами. Каждый слой ветвей это отдельный меш, уже с готовой разверткой. Придать дереву фотореализм — целиком и полностью зависит от вашего умения текстурировать, что выходит за рамки данной статьи.
Тропическая сцена в Blender
Это будет достаточно простой урок в рамках которого мы создадим простенькую тропическую сцену. В уроке будут задействованы модификаторы, шейдеры, UV-развертка и простое моделирование.
Финальный результат
Видеоурок
Текстовый урок
Новички 100% будут смотреть видео, а бывалые ребята смогут и по картинкам быстро воссоздать сцену 😉
Водичку мы будем делать из подразделенного кубика с помощью модификатора Wave. Чтобы он воздействовал лишь на верхнюю часть куба, создайте группу вершин и укажите их.
Песок на порядок проще. Простая геометрия, которой вручную придана нужная высота.
Для зеленой части острова снова создадим плотную геометрию и сместим ее с помощью модификатора Displace. Для смещения воспользуемся текстурой Noise.
При создании лодочки отлично поможет модификатор Mirror. Ну и Subsurfe для гладкости и плавности. После Mirror применим, чтобы он в последствии не зеркалил нам текстуру.
Сидения создадим из кубиков, весла из цилиндров. Для весел Subsurfe не повредит, а вот для сидений он не нужен. Будет лишь лишняя геометрия.
В завершении мелкие детали и веревка созданная с помощью кривой. Итого наша лодка будет привязана к берегу и готова к развертке и настройке материалов.
Займемся пальмами. Проэкструдируйте постепенно сужающийся цилиндр и искривите его с помощью кривой.
Листочки для пальмы создаются точно так же, как основание лодки. Кокосы вовсе ICO-сферы.
При создании камней был взят подразделенный куб, которому изначально была придана форма сферы, а впоследствии форма камней с помощью текстуры Noise и модификатора Displacement.
Кусты, это уменьшенные копии листьев пальмы расставленные по сцене.
Плоскость в качестве пола и лампа в качестве источника света.
Также для мира настроена HDR-карта (ссылочка в начале статьи).
Приступаем к шейдерам. Водичка проста до безобразия.
Для песка создадим легкий шум при помощи текстуры Noise.
Для травы создана вариативность как по цвету, так и по нормалям. На финальном рендере видно не особо, но сделать было несложно.
Для пола создан мягкий градиент. С ним сценка выглядит значительно ярче.
Для лодки и всех ее объектов создана UV-развертка и используется PBR-текстура дерева (ссылочка в начале статьи). Процедурно дерево парой нодов не настроишь 😉
Все то же самое для ствола пальм, только текстуры другие (ссылочка в начале статьи).
Для листьев пальмы достаточно одной текстуры (ссылочка в начале статьи). Связка нодов до безобразия проста. Здесь нам даже модификатор Mirror на руку играет.
У кокосов снова вариативность по цвету и нормалям с помощью текстур Noise.
Для камней можно использоваться сплошной цвет, либо создать вариативность по цвету с помощью… Ну и кусты. Шейдер вы видите на картинке ниже.
Сцена простая, но за счет большого количества деталей требует на себя какое-то время. А это именно то, что нужно начинающему. Набить руку и не зависать по долгу на каждом объекте.
Обязательно делитесь своими результатами в комментариях. Всегда интересно смотреть на ваши результаты, особенно с долей креатива в них 😉
Принципы создания процедурных текстур
Перевод урока: Antonii Illarionov
Из данного урока Вы узнаете о:
Как сделать абсолютно любую текстуру с нуля без готовых изображений?
Это довольно обширный вопрос, правда? Я думаю, что мы здесь все разумные люди и этот вопрос, так или иначе, возникал у каждого. Мы ведь знаем – этот урок будет о фундаментальных основах на примере мрамора, а не на примере буквально любой текстуры, которую вы хотели бы сделать, не так ли? Если честно, то я тоже не против того, чтобы взглянуть на такой урок, но вернемся к реальности…
Кто нуждается в UV развёртках?
Сегодня – не мы! Мы поговорим о процедурном текстурировании, а это означает, что любой объект с процедурными текстурами должен работать корректно без развёрток.
Фоторесурсы
Посещение таких сайтов с изображениями как pixabay или cg textures – действительно удобно, но лишь когда вы можете найти желаемую текстуру. Если вы нашли хорошую бесшовную текстуру или не против того, чтобы потратить время делая её бесшовной, то почему бы не использовать её вместо всех этих процедурных сложностей?
Ну, не то что бы так делать нельзя, фоторесурсы по-прежнему остаются очень полезными и всегда будут таковыми, особенно для передачи тонкостей дизайна и других аспектов изображения, которые вы, возможно, захотите добавить в свой проект.
Достижение этого только с помощью фотографий или нет – упражнение в понимании и воссоздании мира вокруг нас, что позволяет получить более глубокое знания о нём и добиться лучших результатов в своих работах. Это немного похоже на искусство рисования, только для текстур.
Позже к вам приходит опыт, после чего настаёт момент, когда фотографии вам перестают помогать (не без исключений, конечно).
Так в чем же сущность искусства графики? Каковы те аспекты изображения, которые мы можем контролировать, чтобы помочь сосредоточить внимание и сделать заявление в качестве автора, которое было запланировано? Ну, их существует довольно много, вот только пара самых влиятельных…
Фокусная точка изображения будет неясной без контрастного или цветового акцента. С контрастом (оптическим), мы можем обратить внимание на передний план, а также отделить его от фона изображения, что является очень важной деталью. Цветом можно подчеркнуть свою идею еще больше.
Таким образом, вы можете влиять на изображение многими способами, вот лишь некоторые:
До сих пор ищете способ для развития ваших способностей? Посмотрите на этот список и убедитесь, что вы можете что-то сказать о каждом из них. Есть что-нибудь, что вызывает трудности?
Как применить все эти знания в текстурировании?
Мы можем распределить текстуру аналогичным образом на примере о частотах звука, которые могут иметь низкие частоты (бас) и высокие частоты. Изображение может иметь графическую аналогию.
Если вы еще не видели эту иллюзию, то идея в том, что это изображение Эйнштейна, но если вы уменьшите картинку или переместите её далеко – вы увидите Мэрилин Монро. Это частоты изображения, которые дают нам разделение там, где задумал автор. Мы смотрим на Эйнштейна при высоких частотах и Мэрилин Монро при низких.
Вот еще несколько аспектов образа, которые мы можем использовать для изменения видимого изображения:
Создание процедурной текстуры камня
Давайте приступим к работе и применим всё вышесказанное на практике создания процедурной текстуры камня. Вы найдете стартовый учебный файл здесь (заготовки объектов и нодов), это поможет вам начать создание шейдера в Cycles. В этом файле есть почти всё что мне нужно для начала создания любой процедурной текстуры. Урок с более подробной информацией вы можете найти здесь (на английском).
Низкие частоты
Сначала это просто нод текстуры шума, который имеет стандартные настройки и проходит через нод ColorRamp. Градиент снижает контраст за счёт более светлого самого низкого уровня черного и более темного наивысшего уровня белого, отсюда получается сокращение цветовых диапазонов.
Обратите внимание на значение искажения, которое я выделил белым прямоугольником. На самом деле здесь нам не нужна настройка размытия (BLUR), поэтому любой из тех нодов сейчас бесполезен и на самом деле мы могли бы их удалить. Но я оставлю их здесь просто на всякий случай. Маленькие окна предварительного просмотра, соединённые с текстурой Musgrave, наглядно показывают влияние новых нодов на нашу текстуру Musgrave при добавлении нодов.
Высокая частота
Для высоких частот это довольно легко. Градиентная карта просто ставится перед финальным нодом, чтобы позволить наивысшей частоте проявиться немного больше (при масштабе шума в 200). В противном случае детали будут частично утеряны в ярких частотах, которые уже есть.
Царапины / трещины / разводы
Для некоторых видов эрозии, например: царапин, трещин, разводов и тому подобного, – мы можем использовать группу нодов из урока по созданию трещин. Для загрузки соответствующего файла нажмите сюда.
До тех пор, пока текстура чёрно-белая – её слияние с нодом ColorRamp и переназначение чёрно-белой гаммы в цветную – наша цель. Здесь я просто взял цветовые пробы из эталонной фотографии камня и аккуратно, убеждаясь в соответствии с чёрно-белой гаммой (настройки HSV), разместил их на градиентной карте.
Эрозия
Этот раздел является опциональным, но вам следует быть в состоянии воспользоваться этим, поскольку это позволит вам создать: пыль, грязь, изношенность или другой эффект,– в укромных местах и трещинах на вашей модели. Для этого нужно будет смоделировать объект соответственно. В основном это означает лишь наличие петель рёбер рядом с острыми краями.
От этого зависит имеющееся количество цветовых наборов, чаще всего их два, которые вы можете увидеть на картинке ниже (оранжевая шапка). Результат вы можете увидеть правее на картинке соответственно настройкам. Фактура умножается на основную текстуру и в результате образуются изношенности на краях.
Диффузия, рельеф и отражения
Сейчас мы почти закончили с текстурированием, осталось только добавить реалистичных свойств шейдеру. Здесь вы увидите нод Bump, который подсоединен к трём нодам (входам normal), отвечающим за отражение. Нод MixRGB, размещённый перед Bump отвечает за его высоту. Первый разъем – низкая частота и смесь текстуры Musgrave, которую мы уже видели, он наложен на второй высокочастотный нод с масштабом 60 (выглядит ужасно, но на самом деле это просто две картинки с наложением и очень разным параметром частот).
Конвертирование в полированный камень / мрамор
Остался последний штрих – взять всё сделанное и перенастроить в качестве другой, несколько схожей поверхности – подобие мрамора / полированного камня. Так вот, я добавил нод MixRGB, который работает в режиме Overlay, и сделал его зелёным цветом. Нод Bump сейчас неактивен, потому что я отключил его от всех входов normal. Потом я настроил отражения и значение Френеля, проходящее через отражение и с общим наложением на него. Это делается путем увеличения яркости на первом ползунке (first socket) нода MixRGB, который размещён перед узлом Mix Shader.