Генерация 3D-интерьеров с ИИ: почему комната сложнее улицы
Комната, по которой можно пройти, — не то же самое, что картинка комнаты. Проходы, граф мебели и свет, от которых зависит, что именно вы получите.
Попросите картиночную модель нарисовать скандинавскую гостиную — секунд через тридцать у вас будет фотография: белёный дуб, низкий диван, дневной свет вдоль штукатурки. Попросите агента собрать ту же комнату в 3D — и первое, что придётся решить, какой ширины дверь.
Интерьеры просят у ИИ-инструментов чаще всего, и они же стабильнее всего разочаровывают. Дело не в качестве моделей. Комната — более сложный объект, чем улица, хотя она в сотню раз меньше.
Картинка комнаты и комната — разные продукты
Рынок «ИИ для дизайна интерьера» большой, коммерчески здоровый и почти целиком картиночный: загружаете фотографию гостиной, выбираете стиль, через пятнадцать-шестьдесят секунд получаете её же в другом виде. Эти инструменты хорошо делают своё дело, и ниже — не претензия к ним.
Чего они не производят, так это геометрии. В результате нет дивана — есть пиксели, сложившиеся в диван. Его нельзя измерить, об него нельзя столкнуться, за него нельзя зайти, его нельзя переосветить на закат и нельзя экспортировать. Сдвиньте камеру — комната изменится вместе с ней, потому что модель держала не комнату, а один её вид.
От этого зависит, какие вопросы вообще можно задать. «Достаточно ли широк коридор» — вопрос из 3D. Картиночный генератор нарисует коридор шириной 500 мм, и он будет прекрасен, потому что на фотографии никому никуда не идти.
Отличить один продукт от другого помогает один тест: ткните в любой предмет на результате и спросите, какой он величины. Если никто не отвечает в миллиметрах — у вас картинка.
Почему комната сложнее улицы
Экстерьер — больше работы: городок это несколько сотен зданий, обставленная комната — объектов сорок. Но работа и сложность — разные вещи.
Зритель в 600 мм, а не в 30 м
На улице ближайший фасад в 8-15 м от камеры, и верх окна, опущенный на 200 мм, на такой дистанции не виден. Внутри вы стоите, положив руку на столешницу: если она на 1,05 м вместо 0,90 м, вы почувствуете это раньше, чем осознанно посмотрите. Одна и та же абсолютная ошибка снаружи — погрешность округления, внутри — брак.
В комнатах разбираются все
Ни у кого нет твёрдого мнения о правильной ширине магистрали. Зато все всю жизнь сидят за столами высотой 750 мм на сиденьях 450 мм и проходят под дверными перемычками чуть выше собственной макушки, ни разу не пригибаясь. Эта экспертиза невербальна, но срабатывает мгновенно — поэтому сгенерированные интерьеры так часто называют сновидческими: пропорции тихо неверны сразу везде.
Проход — граница между комнатой и диорамой
Снаружи большинство ошибок косметические. Внутри они функциональные, потому что комнату надо занять. Стул, поставленный на 200 мм ближе к стене, не выдвигается. Коридор 700 мм останавливает капсулу персонажа. Остров в 800 мм от рабочей линии превращает кухню в алтарь, на который смотрят из дверного проёма.
Числа, на которых держится комната
Это соглашения, а не физика, и они различаются по странам, но группируются плотно. Интерьер, собранный по ним, читается верным, даже когда никто не может объяснить почему.
| Элемент | Величина, которая читается верно |
|---|---|
| Верх двери | 2,0-2,1 м (полотно 1981 мм в Англии и Уэльсе, 2032 мм в США, 2040 мм в метрической Европе) |
| Потолок | 2,4 м обычно; 2,3 м — британский минимум на 75 процентах площади, 2,5 м в Лондоне, 2134 мм по жилому коду США |
| Окна | Подоконник 900 мм, верх 2100 мм — вровень с верхом двери |
| Столешница кухни | 900 мм высота, 600 мм глубина; навесные шкафы на 450-500 мм выше |
| Кухонный проход | 1200 мм между встречными линиями или вокруг острова; 1000 мм — абсолютный минимум |
| Коридор | 915 мм — минимум кода внутри квартиры; с 1067 мм он перестаёт ощущаться коридором |
| Обеденная зона | Стол 750 мм; 900 мм, чтобы отодвинуть стул; 1100-1200 мм, чтобы пройти за спиной сидящего |
| Мягкая зона | Сиденье 450 мм; 350-450 мм от переда дивана до журнального столика; 1,8-2,4 м между сиденьями напротив |
Вписанные в бриф, эти числа перестают быть справочной ерундой и становятся набором ограничений, который инструмент решает. «Просторная кухня» не проверяется. «1,2 м чистого прохода между островом и линией» измеряется, и, когда выходит 800 мм, вы указываете на проигнорированное предложение.
Сначала планировка, потом предметы
Функция комнаты — это граф, а не список покупок
Кухня — не мойка, плита, холодильник и шкафы. Это те же трое в треугольнике со сторонами 1,2-2,7 м и периметром 4-8 м, с зонами для посуды по обе стороны от плиты и маршрутом через комнату, который не режет треугольник. Гостиная — группа сидений, обращённая к одному центру внимания, с движением в обход группы. Спальня — кровать с проходимой стороной и распахом двери, который в неё не упирается.
Дайте генератору список — получите список: предметы вдоль стен, как на школьной дискотеке. Дайте граф — что рядом с чем, что обращено к чему, что нельзя перекрывать, — получите комнату.
Оболочка, потом движение, потом мебель
Сначала оболочка (стены, пол, потолок и проёмы, в метрах), потом маршруты, потом мебель в то, что маршруты не заняли. Мебель живёт в остатках от движения, никогда наоборот. Сгенерировать диван первым и надеяться, что планировка сама сконденсируется вокруг, — та же ошибка, что строить здания раньше дорог снаружи: локация решается как планировка прежде, чем решается как геометрия. Внутри срок просто раньше, потому что запаса, который поглотил бы ошибку, почти нет.
Здесь агент, работающий в настоящем редакторе, и обходит однопроходную генерацию. Cuberta строит интерьеры так же, как экстерьеры: стены, проёмы, мебель и свет ставятся отдельными объектами, агент считывает сцену обратно и правит себя, а вы можете подвинуть всё, что он поставил.
Проблема света
Снаружи свет почти бесплатный: одно солнце, одно небо — и тени ложатся туда, куда должны. Внутри солнце в основном перекрыто тем, что вы только что построили, и остаётся горстка источников, которые вы обязаны расставить сами.
Самая частая беда сгенерированного интерьера — один яркий точечный источник посреди потолка: плоское пятно на полу, тёмные углы, стены, которым почти ничего не досталось, лица, освещённые строго сверху. Светотехника давно ушла от этого. Действующая редакция EN 12464-1 перестала считать горизонтальную рабочую поверхность всей задачей и добавила требования к окружающим поверхностям: 75-150 лк на стенах, 50-100 лк на потолке. Если стены тёмные, комната тёмная, какое бы число ни стояло на потолочном светильнике.
- Проёмы — сначала источники света, потом геометрия. Окно, за которым ничего нет, — чёрный прямоугольник, и комната теряет направление, откуда должен идти свет.
- Два-четыре видимых светильника. Настольная лампа, подвесы над островом с низом на 750 мм выше столешницы, лента под навесными шкафами — каждый одновременно предмет и источник.
- Рабочий свет там, где работа. Кухне нужно около 300 лк в общем объёме и 500 лк на зонах приготовления; гостиной комфортно на 100-300.
- Одна цветовая температура на комнату, если нет причины поступить иначе. Домашний тёплый — 2700-3000 K; лампа 2700 K рядом с панелью 6500 K читается как баг, а не как приём.
Интерьер готов, когда стоящий внутри человек может назвать время суток, не выглядывая в окно.
Как удержать согласие между внутренним и внешним
Сгенерируйте экстерьер дома и его интерьер отдельными проходами — они не совпадут, и расхождение системное, а не случайное. Интерьеры, сделанные сами по себе, выходят щедрыми: комнаты, которые хорошо снимаются общим планом, крупнее тех, в которых живут. Экстерьеры, сделанные сами по себе, выходят компактными. Вместе они дают четыре комнаты по 5 на 6 м внутри пятна застройки 8 на 10 м. Лечится это тем, что несколько размеров делаются общими и обе стороны читают их оттуда.
- Высота этажа. Потолок 2,4 м плюс примерно 0,3 м на конструкцию пола дают 2,7 м; этажные членения фасада должны быть такими.
- Отметки подоконника и перемычки. 900 мм и 2100 мм на внутренней грани обязаны быть 900 и 2100 на наружной, в тех же местах и в том же количестве. Пересчёт окон сначала из сада, потом с лестничной площадки ловит больше ошибок, чем любая другая одиночная проверка.
- Толщина стен. Наружные — 300-400 мм, перегородки — 100-125 мм. Стены нулевой толщины дают дом, у которого внутренность больше наружности.
Что проверить перед экспортом
- Пройдите, а не облетите. Камера на 1,6-1,7 м, через комнату на высоте головы. Облёт скрывает ровно то, ради чего комната существует.
- Пройдите через каждый проём. Дверь 762 мм пропускает капсулу персонажа радиусом 0,3-0,5 м. Зазор 600 мм между островом и стеной — нет.
- Прогоните проходы. Коридоры 900 мм, кухонные проходы 1200 мм, 900 мм за каждым стулом, который выдвигают.
- Ищите пересечения и зависание. В интерьере контактов между объектами кратно больше, чем снаружи, и именно там видно и то и другое: спинки стульев в столешнице, ковёр сквозь пол, зазор 5 мм под ножкой стола, невидимый на скриншоте и очевидный в тени.
- Проверьте изнанки, посчитайте свет. Вы увидите заднюю стенку шкафа и стену за диваном. Каждый светильник, который читается как источник, должен светить или быть сознательно понижен до реквизита.
Бриф, который можно отдать агенту
Описывайте комнату так, как описали бы её строителю: размеры, позиции, проходы, свет. Прилагательные идут последними и цепляются к материалам, а не к пространству.
Кухня-столовая 4,2 на 5,6 м, потолок 2,4 м. Дверь по центру короткой южной стены, 900 мм ширина, верх 2,1 м. Два окна на северной стене, подоконники 900 мм, верх 2100 мм. Нижний ряд вдоль западной стены: холодильник у северного края, мойка под левым окном, плита в 1,2 м правее с 600 мм рабочей поверхности по обе стороны. Столешница 900 мм высота, 600 мм глубина; навесные шкафы на 500 мм выше. Остров 2,4 на 0,9 м параллельно линии, между ними 1,2 м чистого прохода. Обеденный стол 1,6 на 0,9 м высотой 750 мм в восточной трети, шесть стульев, 1,1 м от края стола до стены. Дубовая столешница, матовые серо-зелёные фасады, штукатурка. Три подвеса над островом, низ на 750 мм выше столешницы; лента под навесными шкафами; все лампы 2700 K; позднее утро с севера.
Каждое предложение здесь проверяемо. Сравните с «уютной современной кухней в стиле фермерского дома с рустикальным шармом»: отличный промпт для картинки и пустая инструкция для инструмента моделирования — он ограничивает цвета и не ограничивает ничего, внутри чего можно стоять. В Cuberta такой бриф — разговор, а не заявка: когда проход выходит 800 мм, вы говорите об этом, и остров сдвигается.
Агент по-настоящему хорош в том, чтобы удерживать числа, — это скучная несущая часть работы, которую люди роняют на усталости: столешница остаётся на 900, проход остаётся на 1200 через сорок объектов без дрейфа. Чего он не сделает — не поставит диван в интересное место. Он выдаёт корректную комнату, а корректность — это пол, а не потолок. Второе честное ограничение — время: улицу можно оценить по скриншоту, а комнату нельзя. Её надо пройти, на высоте головы, через каждую дверь.