Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Цей урок навчить вас моделювати реалістично виглядають рослинність в 3D, близьку до того, що ви можете знайти на сайті blender greenhouse, звідки взяті ці приклади:

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

В уроці буде розглянуто тільки функціонал програми NGPlant, і буде сказана пара слів про імпорт в блендер.
Звичайно, ми будемо використовувати тільки open-source ПО: ngplant для генерування і Bender для фінального рендеринга композиції (хоча частина з Blender тут не розглядається). Відповідно, першим кроком для вас буде установка зазначених програм, в разі їх відсутності. Перераховане ПО є мультиплатформенним, тому ви зможете працювати в будь-який ОС на ваш вибір. Зрозуміло ви можете використовувати інші додатки, тому мої поради будуть носити загальний характер. Але все ж я б порекомендував почати користуватися зазначеними програмами, тому що вони є чудовими складовими комп'ютерної графіки, про які повинен знати кожен.

1. ТРОХИ ТЕОРІЇ

Те, що я скажу тут - в основному поняття, які я чув на лекціях в архітектурній школі. Оскільки я знаходив це цікавим, то постійно заглиблювався в це. Якщо теорія дійсно нудна для вас, можете пропустити її. Але я зроблю все можливе, щоб зробити цю частину цікавою і ненудної.

Перше золоте (і ви зрозумієте чому) правило говорить: у світі рослин ВСЕ починається з математичного правила. Розташування дерев в лісі. Відстані між різними частинами дерева різного віку. Розташування гілок і підрозділ стовбура. Кут нахилу гілок до стовбура. Розмір гілок, їх форма. Поєднання декількох листя в пучку. Складна структура квітки. Все підпорядковано правилам. У моєму холодильнику завалявся зелений перець:

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Він немов складається з частин і вони все слідують одному і тому ж правилу: 3 головних підрозділи, і кожне з них має проміжне. У загальній складності перець володіє 6-ю підрозділами. Ви можете бачити, що місце, звідки починаються листя перцю - практично ідеальний шестикутник. Ви можете повторити це з іншою рослинністю. Навіть банан має регулярну періодичну геометрію.

Друге правило: буває деякі винятки, але вони ніколи не скасовують правила. На зображенні перець поділені на шість частин, але у верхній правій частині помітно нібито ще один підрозділ. Це не так. Іноді рослини деформуються, згинаються, стискуються, тому що адаптуються. Виростаючи в агресивному середовищі, де їм доводиться боротися за виживання з іншими рослинами, але правило ніколи не втрачається. Так, ви можете знайти перець і з 7-ю підрозділами, але це буде генетична випадковість, як рука з 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, тисяча п'ятсот дев'яносто сім, 2584, 4181, 6765, 10946 , 17711, 28657 ...

Виглядає не дуже корисно, так? Насправді це примітивний код, який використовується природою в еволюції. Всі рослини дотримуються цього правила під час росту. Спочатку одна гілка, потім інша, далі їх три, потім п'ять ..., думаю ви зрозуміли. Якщо ви погляньте на рослини - ви знайдете послідовності Фібоначі всюди. Цей закон визначає себе в тому, як з'являється листя на гілці, як організовуються пелюстки квітки, де виникають квіти на деревах, і т.д.

Але ця послідовність є щось набагато більше. Ви знайдете його скрізь, де є життя. Популяція кроликів збільшується за правилом Фібоначі. Форма раковини молюсків. Пристрій бджолиних вуликів. Пропорції Вашого тіла ... Один з головних прикладів це, звичайно ж, побудова спіралей (див малюнок).

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Здавалося б, що такого? Але листя розміщуються на гілки по спіралі Фібонначі. Наскільки мені відомо, близько 92% рослин дотримуються цього правила.

Існує одна важлива річ для нас у всьому цьому: повторювані математичні послідовності - це саме те, що комп'ютери роблять найкраще! Процес, який використовується програмою, щоб відтворити дерево дуже схожий на процес, який використовується в природі. Як тільки ви відкриєте будь-яке ПЗ, що генерує дерева, ви побачите, що його параметри тісно пов'язані з тим, що ми тільки що обговорювали вище.

2. СПОСТЕРЕЖЕННЯ І ОТРИМАННЯ МАТЕРІАЛІВ

Якщо ми хочемо відтворити дерево, так само, як коли ми хочемо відтворити що-небудь, ми повинні вивчити «оригінал» дуже уважно. Як ви вже зрозуміли, для початку нам знадобляться зображення дерев або іншої рослинності, яку ми хочемо змоделювати. Ви можете просто піти в ліс і зробити кілька знімків вашого улюбленого дерева на камеру, але, як правило, в інтернеті багато матеріалу, просто спробуйте пошукати в Google картинках за назвою вашого дерева.

Якщо ви не знаєте назви дерева, але знаєте, що вона росте у вашій країні, шляхом недовгих пошуків ви повинні знайти такі списки рослин і дерев без особливих проблем. Можна шукати по вегетативним ознаками. Знайдіть зображення в хорошій якості, так щоб бачити і загальні плани і великі плани в деталях, щоб можна було розгледіти квіти, плоди, кору.

Як приклад, в цьому уроці я постараюся згенерувати в'яз. Отже, за запитом «в'яз» пошук картинок видає досить багато хороших фотографій, і, звичайно сторінку Вікіпедії.

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Як ви бачите, я зосередився на фотографіях, які показують всю форму дерева. Верхнє по центру зображення дуже цінно, тому що воно показує форму гілок дуже ясно. Зображення в нижньому ряду теж корисні, так як показують розташування листя.

Ми вже можемо зачерпнути багато з цих фото: загальна форма, безумовно, куляста. Структура гілок починається товстим стовбуром, а потім дуже довгі гілки починаються дуже рано, і йдуть прямо вгору, практично вертикально, потім вони згинаються, щоб сформувати форму кулі. Зауважимо, що «вторинні» гілки починаються досить пізно, далі ніж на півдорозі. Листя також здаються зосередженими на зовнішній частині.

Зверніть увагу на ще одну цікаву особливість: який з цих зразків більш повітряний? Який з них виглядає ближче до того, що нам треба? Для мене це останній. Це старий, часто представляється мною вид в'яза, який мені подобається. Нагадаю що це темні дерева з товстим стовбуром з маленькими листям на кінцях.

Нарешті, зверніть увагу на кольори. Схоже, є досить багато колірних варіацій, але мені здається, що щось між зеленим і жовтим, в темних тонах, дасть нам реалістичний вигляд. Ми зробимо деякі тести пізніше.

3. МОДЕЛЮВАННЯ: NGPLANT

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Добре, тепер прийшов час, щоб запустити софт. Відкриваємо ngplant. Інтерфейс досить простий. Ви можете повертати / панорамувати вигляд кнопками миші, власне як і вибирати / додавати / видаляти шари гілок зі списку (нижня права панель). Потім, ви граєте з настройками вище, в полях гілок. Кожен шар гілок має свою «Stem» панель, яка контролює тільки його параметри. Вкладка «Branching» контролює, де нащадки гілок кріпляться до своїх батьків.

Вкладку «Material» ми не будемо особливо використовувати, тому що створимо матеріали прямо в блендері. Але ви також можете зробити все матеріали і відображення тут, якщо хочете.

Вкладка «General» служить для створення випадкових варіацій, коли наше дерево вже зроблено.

інтерфейс ngplant
Отже, давайте почнемо, з створення нашого товстого стовбура. Я покажу вам, як параметри взаємодіють між собою (їх не так вже й багато). Наприклад, ось як отримати форму товстого стовбура, як на нашій картинці:

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Просто. чи не правда? Ми просто поміняли параметри в розділі «cross-section».

Добре. Зараз уважно поглянемо на наші картинки: зі стовбура росте дуже вузька група основних гілок. Вони починають рости практично вертикально, потім досягаючи вершини майже розгортаються в форму «чаші».

Додамо друге покоління гілок, починаючи приблизно з третини стовбура і надаючи їм форму чаші.

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Додамо новий шар гілок починаючи приблизно з 50% висоти батька. Регулюйте параметр min offset, щоб гілки росли вище. Крива Declimation підніме гілки догори. А ось крива phototropism зігне гілки до необхідної форми. Спробуйте, поки не уловите взаємозв'язок. Параметром variation додайте соті частки. В кінці збільшіть density і revolution angle - таким чином ви розмножите гілки по колу всього стовбура, і тому вони стануть розрядження - компенсуєте кількість полем density.

Тепер ми додаємо другий шар гілок, більш тонких і довгих, вони повинні виглядати більш хаотично.

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Додаємо новий шар гілок, що стартують від 40% довжини батька (min offset). Трохи пограйте з declination і revolution angle. Як і в попередньому випадку змінюйте phototropism. Налаштуйте density відповідно до зовнішнім виглядом.

Тепер ви бачите, що ми могли б піти набагато далі, це дерево може отримати ще пару шарів гілок, щоб мати більш хаотичний вигляд. Але ми також повинні бути обережні, щоб не зробити наші дерева занадто важкими для прорахунку. Хороший спосіб серйозно спростити розрахунки - зменшуйте параметр Resolution в групі Cross-section. Таким чином ви зменшите кількість граней в профілі гілки, що знизить кількість полігонів.

Я створив ще один шар прямо на стовбурі, щоб замаскувати місце між стовбуром і першим шаром (коли буде листя).

Тепер найсмішніша частина: додаємо листя. Ми будемо додавати листя на кожен шар гілок.

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

Додаємо перший шар листя (так само як додаємо гілки, тільки потім stem model -> тип quad), поверх третього шару гілок. Надайте їм колір і зробіть двосторонніми. Задайте листю деякий кут обертання (revolution angle), трохи нахилу (крива declination), і трохи подредактіруйте криву масштабу (scaling), так, щоб більші листя знаходилися ближче до кінця гілки.

Я зробив листя куди більше, ніж вони є насправді. Все просто - ми не будемо тектсуріровать кожен листок окремо, замість цього ми використовуємо текстури «груп листя» і тим самим час рендеринга зросте в рази.

У вкладці General можете пограти параметром seed, це дасть вам множинні варіації вашого дерева без зайвих зусиль.
Тепер, все що нам потрібно зробити, це експортувати наше дерево в формат .obj, для імпорту в блендер.

Думаю, що з імпортування obj об'єктів проблем виникнути не повинно.

Моделювання реалістичних дерев з використанням ngplant і blender - уроки blender

У блендері дерево імпортується окремими мешамі. Кожен шар гілок це окремий меш, вже з готовою розгорткою. Надати дереву фотореалізм - цілком і повністю залежить від вашого вміння текстурувати, що виходить за рамки даної статті.

Схожі статті