Привет, Хабр! Меня зовут Роман Заякин, я руководитель проекта градостроительного модуля платформы R2 в компании ПИК. Хочу рассказать, как и зачем мы создали собственный инструмент для архитектурно-градостроительного анализа, какие вызовы решали и каких результатов добились.
Почему вообще нам понадобился свой инструмент?
Все началось с трех проблем, с которыми столкнулась наша команда специалистов-проектировщиков генплана:
-
Необходимость перебирать десятки вариантов застройки на площадке для выбора оптимального. Требования к архитектуре, нормативы, пожелания от заказчика – все это постоянно меняется. Чтобы найти оптимальное решение, нужно перебрать огромное количество комбинаций: расстановка зданий, этажность, ориентация по сторонам света, инфраструктура. И еще помножьте это все на ограничения В итоге делать это вручную — долго, дорого и неэффективно.
-
Переход на типовые элементы в проектировании. В реализации проектов жилой застройки мы использовали стандартизированные жилые секции. Возник логичный вопрос: если элементы типовые и используются повторно, почему бы не автоматизировать их компоновку? Так появилась идея алгоритма, который будет собирать варианты застройки как конструктор.
-
Усложнение расчета инсоляции — 2D-представления стало мало. Изначально инсоляцию и ТЭП проектировщики считали в Civil 3D, используя плагины, которые были разработаны нами. Но по мере усложнения условий (разные типовые этажи на одной секции, настраиваемые расчетные точки, учет дополнительных критериев) стало понятно: плагинами в Civil 3D не обойтись. Нужен был движок, способный работать с 3D-физикой в реальном времени. К тому же тестирование подходящего движка под смежные задачи уже шло полным ходом.
Наш разработчик, который реализовывал алгоритмы расчета для плагинов Civil 3D, в какой-то момент сказал: «Ребята, я уже не вижу, как с этим работать дальше. Нужно что-то принципиально другое».
Мы поняли, что лучше создать единую платформу, где и генерация вариантов, и расчеты, и визуализация работают согласованно, чем поддерживать синхронизацию между разрозненными инструментами. Хоть это и плагины для одного ПО.
Почему Unreal Engine?
Выбор технологического стека был обусловлен несколькими факторами:
|
Критерий |
Civil 3D |
R2 (Unreal Engine) |
|
API и расширяемость |
Ограничено, часть функционала закрыта |
Практически неограниченная свобода реализации |
|
3D-физика и инсоляция |
Долгий пересчет, нет пересчета данных real-time — только перезапуск |
Real-time, мгновенная обратная связь |
|
Визуализация |
Чертежная, техническая |
Презентационное качество, работа со светом и материалами |
|
Работа с геоданными |
Через Map 3D, требует конвертации |
Интеграция с GeoServer, поддержка множества форматов |
|
Быстродействие |
Ограничено возможностями Civil |
Высокая производительность при работе с большими объемами данных |
Мы не отказались от Civil 3D полностью — интеграция с ним осталась для передачи данных на последующие стадии проектирования или для уточнения текущих данных в 2D представлении. Но «мозг» процесса — расчеты, генерация, анализ, принятие решений — переехал в R2.
Еще один момент: два одинаковых параллельных расчета (в Civil и в R2) никому не нужны, поддержка плагинов в Civil и R2 становилась затруднительной. Поэтому решение было очевидным: считать в одном месте, а в другое передавать уже готовые результаты. Для этого мы настроили интеграцию передачи данных между ПО, но это уже отдельная история.
Что умеет градостроительный модуль R2?
В первую очередь модуль предназначен для моделирования вариантов архитектурно-градостроительного анализа (АГА) и оценки потенциала площадки. Используется специалистами генплана на стадиях проектирования предпроект и проект.
Работа с геоданными
Модуль поддерживает загрузку и использование данных из различных источников:
-
БД на GeoServer: 2ГИС, FMap, OpenStreetMap;
-
спутниковые подложки с адаптивной детализацией (Яндекс Карты и ArcGIS);
-
отдельные слои, например охранные зоны, СЗЗ, объекты культурного наследия, дороги, станции метро, ж/д платформы, остановки.
Все данные подгружаются из GeoServer, что обеспечивает централизованное управление и актуальность информации для всей компании.
Автоматическая генерация вариантов застройки
Поддерживается несколько сценариев генерации застройки (сборка производится из секций повторного применения):
|
Сценарий |
Когда использовать |
Ключевая особенность |
|
Регулярная сетка |
Простые участки с четкой геометрией, ограничения |
Расстановка по узлам сетки, предсказуемый результат |
|
Нерегулярная сетка |
Криволинейные границы участков, ограничения |
Адаптивная интерполяция, учет локальных ограничений |
|
Кастомная застройка |
Индивидуальные требования к секциям |
Задание произвольных габаритов, поэтажный рост с учетом инсоляции |
|
Малоэтажная застройка |
Коттеджные поселки, таунхаусы |
Генерация дорожного каркаса + зонирование под типы домов |
|
Массинг (инсоляционная горка) |
Оценка объемно-пространственной композиции |
Быстрый подбор формы здания с учетом инсоляционных ограничений |
Алгоритмы автоматически размещают:
-
жилые секции (типовые и кастомные);
-
кварталы повторного применения (КПП);
-
социальные объекты (школы, детские сады, поликлиники);
-
паркинги (наземные и подземные).
Расчеты: инсоляция, КЕО, ТЭП
Инсоляция:
-
real-time-расчет с визуализацией «вееров» (световых секторов);
-
учет нормативных периодов инсоляции;
-
подсветка нарушений: красный цвет — сверхнормативное отклонение, желтый — прерывистая инсоляция (в норме), зеленая — непрерывная (в норме);
-
настраиваемые расчетные точки (на подоконнике, в середине окна);
-
индивидуальные параметры окон (тип конструкции, глубина четверти, угол тени);
-
инструменты: расчет инсоляционных фронтов, инсоляционные линейки в зависимости от широты региона, инсоляционная горка, расчет инсоляции по площади с построением тепловых карт.
КЕО (коэффициент естественной освещенности):
-
расчет по СП 23-102-2003;
-
учет материалов остекления, переплетов, несущих конструкций;
-
автоматический расчет для комнат, квартир или целых этажей;
-
экспорт результатов в Excel.
ТЭП (технико-экономические показатели):
-
мгновенный пересчет при изменении модели проекта;
-
расчет площади, населения, потребности в парковках;
-
расчет потребности в социальных объектах (школы, детсады, поликлиники);
-
гибкие методы расчета (от ГНС, от площади квартир, от численности населения).
Важно: все расчеты синхронизированы. Изменил этажность секции — автоматически пересчиталась инсоляция, ТЭП, потребность в детсадах и т. д. Никаких расхождений между «цифрами в разных файлах». Никаких проблем по типу «обновил ли я расчет?».
Инфраструктура и окружение
-
библиотека типовых параметризованных объектов: жилые секции, школы, детсады, паркинги, поликлиники с заданными параметрами;
-
редактор пользовательских элементов: можно создать и сохранить свой тип здания и назначить ему функциональную принадлежность;
-
инструменты для задания ограничений: границы проектирования, санитарно-защитные зоны (линейные и площадные);
-
автоматические проверки: контроль достаточности площади участков для размещения соцобъектов.
Визуализация и презентация
-
настройка стилей отображения для презентационных материалов;
-
управление освещением: время суток, сезон, положение солнца;
-
облачность, туман, интенсивность света — тонкая настройка атмосферы;
-
сохранение видов и наборов видов для быстрой навигации;
-
экспорт изображений.
Интеграции
-
Civil 3D/Autocad_R2 (обмен данными): экспорт секций, ТЭП, результатов расчета инсоляции (фронты, периоды, лучи);
-
Excel: выгрузка квартирографии, ТЭП, расчетов стояночных машино-мест;
-
GeoServer: импорт GIS-данных.
Какие проблемы R2 решает на практике?
Для генпланистов это в первую очередь сокращение времени на предпроектный анализ. Вместо недели ручной проработки — несколько часов на генерацию и отбор 5–10 концептуальных вариантов.
Также стоит отметить объективное сравнение вариантов и быстрое принятие решений, как дальше будет развиваться проект. Связка ТЭП + инсоляция + композиция в проекте позволяет это сделать намного лучше, чем использовать субъективные оценки. Автоматизация и точность вычислений минимизируют ошибки.
Real-time-расчеты и мгновенное отображение результатов позволяют сразу видеть, как изменилась инсоляция проектируемых зданий и окружения, а также ТЭП как отдельных зданий и всего проекта.
Для руководства главная ценность здесь — это быстрая оценка потенциала площадки. Ответ на вопрос «Что можно построить на этом участке» с цифрами по площади, населению, себестоимости.
Еще одно преимущество — быстрая сборка презентационных материалов из проекта. Не нужно отдельно заказывать визуализацию для комитета или инвесторов — настроил стиль, сделал рендер.
Помимо прочего, удобно хранить в рамках одного проекта несколько вариантов решений, где все расчеты зафиксированы и можно вернуться к любому варианту.
Эффекты после внедрения
По итогам внедрения модуля в рабочие процессы мы зафиксировали:
|
Показатель |
Значение |
Комментарий |
|
Ускорение стадии «Предпроект» |
до 50% |
За счет автоматической генерации и мгновенного пересчета ТЭП и инсоляции |
|
Сокращение трудозатрат на расчет инсоляции/КЕО |
до 20% |
Real-time-режим + автоматизация рутинных проверок на стадии «Проект» |
Куда движемся дальше?
Разработка не стоит на месте. Сейчас мы работаем над генеративным сценарием «Мастерплан», который будет учитывать не только расстановку зданий, но и УДС, пешеходные профили, пожарные проезды и так далее. Это позволит получать более детализированные и увязанные решения по площадкам, максимально приближенные к реальному проекту.
Параллельно мы:
-
развиваем инструменты расчета инсоляции;
-
интегрируемся с дополнительными источниками исходных данных для проектирования;
-
интегрируемся с другими модулями платформы R2;
-
смотрим в сторону полноценного 3D-моделирования внутри R2.
Вместо заключения
Создание градостроительного модуля R2 — это не просто «еще один плагин для Civil 3D». Это попытка переосмыслить процесс предпроектного анализа:
-
от ручного перебора вариантов — к управляемой генерации;
-
от разрозненных расчетов — к единой цифровой модели;
-
от чертежей — к интерактивной визуализации.
Мы не претендуем на универсальность — инструмент заточен под процессы крупного девелопера. Но если вы сталкиваетесь с похожими вызовами (много вариантов, сложные нормативы, необходимость быстрой оценки), возможно, наш опыт будет полезен.
Если вас заинтересовало решение и вы хотите узнать больше о возможностях платформы R2 — будем рады обратной связи в комментариях или в личных сообщениях.
P. S. Если тема интересна, в следующих статьях могу подробнее рассказать про архитектуру R2 и интеграцию Unreal Engine с инженерным ПО, алгоритмы генерации застройки и работу с ограничениями, а также опыт внедрения инструмента и поддержку пользователей.
P.P.S. Подписывайтесь на наш канал bimteamnews в Telegram и следите за новостями.
ссылка на оригинал статьи https://habr.com/ru/articles/1034804/