Процедурное моделирование зданий

Создание зданий и сооружений в футуристическом виде, весьма сложная задача. Особенно «процедурные», ведь требуется создать не просто один этаж и размножить его, а создать совершенно новую, удивительную архитектуру, которая должна быть необычной для нашего глаза, при этом быть этапом эволюции в развитии технологий. В Интернете, если искать картинки по запросу «здания будущего», полученный результат можно разбить на 3 группы. В первую попадают куполообразные здания и сооружения. Во вторую состоящие из труб с огромными вентиляторами и с десятком непонятных пластин. В третью, привычные людям здания с измененной геометрией.

Художники, фантасты, архитекторы и другие деятели видят будущее по своему. Но всех их объединяет создание нового, прекрасного мира с выдающейся архитектурой.

Предлагаю вашему вниманию результат простейшего генератора зданий. Он основывается на конструктивной сплошной геометрии с оптимизацией.

Генератор зданий создан полностью на Javascript, не использует сторонних библиотек. Создан для проекта Dreams Gate.

Оптимизация 3D моделей на Javascript

Все кто работал с конструктивной сплошной геометрией (CSG), создавал свой воксельный движок или использовал готовые модели, сталкивался с проблемой оптимизации треугольников. Число и расположение треугольников у моделей может быть не оптимальным. Конечно, если дизайнер нарисовал для вас лично модель, его можно попросить её исправить. Но как быть, если модель процедурная, и дизайнер не может исправлять каждую процедурную деталь?

Нам придется делать это автоматически.

Читать дальше

Редактор моделей для различных форм жизни

При создании большого проекта Dreams Gate, постоянно нужны модели и не только зданий и сооружений, но и различных форм жизни. Это могут быть различные животные, рыбы, гуманоиды, фантастичные пришельцы, динозавры и даже роботы. Но рисовать их в стандартных редакторах Blender / 3D Max / Maya и других очень сложно, долго, а в итоге они будут занимать слишком много места (даже в сжатом виде модель одного человека получилась 43кб при 60 тыс треугольников и 1 текстуре 1024х1024 без анимации). Конечно процедурные модели экономят место, но в этом случае создание игры займет слишком много времени.

Читать дальше