3D-моделлеры, простите: я сделал город одним промтом

Настало время рассказать про использование нейросетей для генерации карт местности и зданий.

3D-моделлеры, простите: я сделал город одним промтом

Как все начиналось

Недавно мой товарищ взялся за создание модели города, чтобы потом можно было ее распечатать и повесить на стену.

Однако, мы так хорошо зарубились в Civilization VI, что дедлайн был почти что полностью просран. Но все под контролем - существует плагин на Blender, позволяющий парсить данные из OpenStreetMap. Такой подход позволяет избежать унылого расположения сотен домиков поверх спутникового снимка.

И именно в тот злополучный вечер накрылось API, которым пользовался плагин, а показывать работу уже завтра.

Некоторое время друг безуспешно пытался его оживить, после чего совсем приуныл. Меня же посетила мысль - а что если закинуть запрос GPT в режиме "Работа"?

Ранее, у меня уже был опыт в режиме обычного чата, и там получалось.. что-то похожее...

3D-моделлеры, простите: я сделал город одним промтом

На сцене выступает GPT Sol 5.6 (Очень высокий)

По соображениям приватности заказчика, вместо оригинальной локации, приведу пример оцифровки Котора, Черногория, 42.4247, 18.7712.

Промт может быть примерно таким:

Сгенерируй 3D карту местности по координатам 42.4247, 18.7712, Котор, Черногория, радиусом 1км. Результатом должен быть .stl файл, который можно будет применить для фотополимерной печати. Обязательно уточни данные о рельефе и высоте зданий из открытых источников. Здания должны иметь объемные модели. Также, расположи модели деревьев и другой растительности, на свое усмотрение. Это же касается яхт на воде. Раздели на отдельные меши: красные крыши, озеленение, яхты, водную поверхность, крепостную стену.

3D-моделлеры, простите: я сделал город одним промтом

У современных текстовых нейросетей 3D моделирование происходит примерно так:

- Собираются данные

- Пишется скрипт на Python;

- Запускается;

- Полученный .stl или .obj результат выдают пользователю

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

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

Получается вот так.
Получается вот так.

Что меня особенно порадовало, можно добиться разделения элементов на отдельные меши. Это может пригодиться для многоцветной печати.

3D-моделлеры, простите: я сделал город одним промтом

Когда ставил на печать, я попросил убрать деревья и объединить все модели в один меш для красоты и удобства.

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

А где предел?

После предыдущего эксперимента, я был просто обязан проверить способности GPT в скульптинге. В качестве референса, был взят небезызвестный вампир из популярного аниме.

3D-моделлеры, простите: я сделал город одним промтом

И одним движением руки...

Ему зашили рот!... За что?!
Ему зашили рот!... За что?!

Результат оказался обескураживающе-отрезвляющим:)

При этом, не стоит забывать, что ИИ - ИИ рознь! Взять хотя бы специализированные модели: Hunyuan 2.1 или 3.1

Hunyuan 2.1 через ComfyUI
Hunyuan 2.1 через ComfyUI

И здесь мы натыкаемся на современную проблематику генеративных ИИ - они создают неплохие, но совершенно сырые продукты. Их можно использовать, как заготовки для дальнейшей работы, но совершенно точно нельзя оставлять в изначальном качестве.

С другой стороны, текстовые нейронки способны генерировать готовые к печати модели, но только с простой геометрией:)

Эксперимент с моделями для DnD
Эксперимент с моделями для DnD

Вывод?

Современные нейросети оказались полезны не только разработчикам, но и 3D-моделистам, как инструмент, способный значительно сократить объем рутины, ускорить прототипирование и запуск MVP.

В частности, я буду пытаться печатать подарочные конструкторы для DnD и развивать modellocation - проект по созданию архитектурных макетов и объемных карт.

А у меня на этом все. Кто слушал - молодец, возьми с полки пирожок.

Кстати, буду рад предложениям для будущих постов.

3D-моделлеры, простите: я сделал город одним промтом

P.s Повторил эксперимент с Москвой. Глядите! Оно гигантское

3D-моделлеры, простите: я сделал город одним промтом
3D-моделлеры, простите: я сделал город одним промтом
3D-моделлеры, простите: я сделал город одним промтом
7766
4433
66
44
33
11
11
11
11