ngPlant — свободная программа, для создания модели растений и деревьев

Мало кто не знает о существовании свободного, кроссплатформенного трехмерного редактора Blender. Кроме него для Linux существуют и другие программы подобного назначения. Среди свободных можно на звать K-3D, Albatross, а коммерческие приложения представлены такими монстрами как Maya и Realsoft 3D.
Однако бывает необходимо выполнить узкоспециализированную задачу без привлечения столь мощных инструментов. Одной из трудоемких задач моделирования по праву считается разработка растений. Сложность возникает из-за большого количества мелких деталей, причем, как правило, разной формы. Существуют специальные плагины или скрипты для основных трехмерных редакторов, облегчающие создание моделей растений. Так, для Blender имеется мощный и сложный плагин Gen3.
NgPlants — это кроссплатформенное приложение, которое позволяет создавать трехмерные модели растений и деревьев. Ориентированная только на эту задачу программа великолепно справляется с ней. Практически нет ограничений на формы создаваемых объектов. Можно моделировать как реальные, существующие в природе растения, так и безумно фантастические на вид. Деревья, кусты, цветы, колючки — все это подвластно ngPlants.

Однако не думайте, что редактор предоставляет пользователю какой-нибудь мастер, в котором, просто ответив на вопросы, можно получить объект на выходе. В действительности есть всего несколько примитивов-заготовок и очень широкий набор опций. Компонуя созданные объекты, настраивая их взаимодействие, можно достичь поразительных результатов. Но сделать это, на первый взгляд, очень сложно. Проблема еще и в том, что документация на программу весьма скудна: имеется полное описание функций редактирования, но вот внятного пошагового туториала не существует. Откровенно скажем, что создание моделей зачастую происходит на интуитивном уровне.

Принцип моделирования

Практически любое растение или дерево в природе имеет своеобразную иерархическую структуру. Сначала идет ствол, как основной элемент. От него отходят крупные ветви, затем более мелкие и т.д. NgPlants создан так, чтобы максимально точно сымитировать эту конструкцию.

Первоначально пользователю предоставляется одинокий примитив — основа для строительства. К «стволу» можно присоединить дочерний элемент, к нему еще один, и еще один… Следует пояснить, что понимается под словом «элемент». Им может быть отдельный объект или целая группа. Принцип можно понять, если каждый элемент в конструкции объекта сопоставить с элементом структуры реального дерева: ствол идет под номером один, ветви под номером два, а листья относятся к номеру три.

Важно, что программа не рассматривает отдельно примитивы в группе, а оперирует ею только целиком. Поэтому практически вы не можете изменить вид только одной веточки, работать придется с целой группой. Это кажется абсурдным, но в действительности сильно упрощает работу моделлера. Ведь нет никакого смысла «рисовать» каждую веточку отдельно. Для такой штучной работы необходима более мощная программа, a ngPlants позволяет буквально, как на конвейере, штамповать модели растений и деревьев. Из-за описанного принципа моделирования в программе отсутствуют инструменты управления отдельными объектами. Имеющееся окно просмотра выполняет только функцию демонстрации результата.

Зато редактор предлагает очень мощные возможности для манипулирования группами. Продуманно все до мелочей. Примитивы, входящие в одну группу, можно изгибать под разными углами, вращать, масштабировать, распределять их по поверхности корневого объекта. Немаловажен и тот факт, что для каждого параметра манипулирования имеется настройка хаотичности. Без последнего создание таких однотипных в целом, но разных по отдельности элементов было бы невозможным.

Не остался в стороне и вопрос текстурирова-ния. Каждому элементу иерархии присвоен свой уникальный материал, где можно добавить текстуру, настроить ее прозрачность, расположение и масштабирование, установить как billboard. Некоторые функции доступны только для определенного типа примитива, выбранного для группы.

Отдельно нужно рассказать об имеющихся примитивах. При создании нового проекта или нового звена в иерархии программа использует обычный меш-объект Tube. Он идеально подходит для имитации стволов и веток. В принципе, с его помощью можно создавать и довольно мелкие детали, например, иголки для елей, но это неразумно с точки зрения производительности. Поэтому в ngPlants существует специальный примитив Quad, который представляет собой обычную прямоугольную плоскость. Это позволяет использовать его для моделирования мелких плоских объектов (к примеру, листья) или даже в качестве billboard.

Использование для игр

Мы вряд ли рассматривали бы этот инструмент, если бы он не был пригоден для создания игровых моделей. Основное требование к ним — как можно меньше полигонов, но не в ущерб качеству. Особо это касается таких сложных объектов как деревья.

NgPlants предлагает два способа решения этой проблемы. Некоторые многочисленные и мелкие элементы вы можете переконвертировать в Quad и использовать текстуры с альфа-канал ом. Подобный подход применим и для крупных объектов, таких как ветви. Но разработчики предусмотрели вариант изменения разрешения для примитивов Tube. Эти возможности уже позволяют гибко выбирать между качеством и производительностью.

После завершения моделирования готовый объект вместе с настройками материалов может быть экспортирован в формате Wavefront obj. Такой формат модели «понимают» практически все современные ЗО-редакторы и некоторые игровые движки. Важно, что ngPlants автоматически проставляет UV-координаты для текстур и без проблем экспортирует в Obj. Несколько мелких штрихов в любимом редакторе и дерево готово!

Оценка

Функциональность 9/10
Документация 4/10
Удобство в/10
Итого: 7/10


http://blog.wel.org.ua

работаю админом, прогером сеошнегом :)

Leave a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Загрузка...
Menu Title