Искра
Анимация и 3D

Агент в Blender: MCP и Python-скрипты

Тема 4321 мин чтения + 2,5 часа на заданиеРевизия 28 октября 2026

Blender бесплатный, открытый и умеет всё: моделирование, материалы, свет, рендер, анимацию. Проблема в том, что учить его годами. Теперь между тобой и Blender может стоять агент: ты говоришь «коробка 120 на 60 на 18 миллиметров со скруглением 3 миллиметра, матовый алюминий», а он делает. Магия работает ровно до первого предмета, где важна точность, и дальше начинается работа: чертёж, измерения, малые шаги, контрольные рендеры. Эта тема про оба способа подключить агента к Blender и про дисциплину, без которой результат выходит дорогим и «примерно похожим». Всё ниже проверено на трёх моих проектах осени 2026: диктофон TP-7 через MCP, эмиратский дом с ветровой башней скриптами и 3D-иконка из SVG, упакованная в скилл.

Почему агент вообще может управлять Blender

Всё, что делается мышкой в Blender, доступно из Python через модуль bpy: создать куб, подвинуть вершину, назначить материал, поставить камеру, отрендерить. Интерфейс Blender сам построен на этих вызовах. Поэтому агенту не нужно «видеть» кнопки: он пишет код, а Blender его выполняет. Отсюда два способа подключения.

MCP: живое подключение Python-скрипты: файлом
Как работает аддон в Blender открывает сокет, MCP-сервер передаёт команды агента и возвращает результат и картинки вьюпорта агент пишет .py, ты запускаешь его во вкладке Scripting или из терминала: blender --background --python build.py
Что агент видит сцену, объекты, рендер прямо по ходу (look, get_scene_info) только то, что скрипт сам сохранил: рендеры и логи
Сильная сторона диалог: «подвинь кнопку на 2 мм левее» выполняется за секунды воспроизводимость: скрипт пересобирает сцену с нуля, лежит в git, запускается без интерфейса и на сервере
Слабая сторона состояние живёт в сессии: закрыл Blender, история правок пропала медленнее итерация, нет живой картинки для агента без лишних рендеров
Когда брать исследование, концепт, свет и камера, правки по месту финальная сборка предмета по чертежу, батч рендеров, всё, что будут повторять

Лучший режим — оба сразу. Исследуешь и правишь через MCP, а каждое утверждённое решение агент переносит в скрипт build.py. Тогда через неделю предмет пересоберётся одной командой, а не воспоминаниями о чате. В проекте с иконкой у меня так и устроено: сцены собирает iconlib.py, а в README прямо написано: «пересборка перезаписывает сцены и материалы, поэтому удачные значения из ручных правок переноси в iconlib.py».

Две карточки рядом. Слева «Путь 1: Blender MCP, живое подключение»: агент, MCP-сервер и аддон обмениваются командами, плюсы — диалог и агент видит сцену, минусы — история живёт в сессии и сокет без авторизации. Справа «Путь 2: Python-скрипт файлом»: агент пишет build.py, ты запускаешь blender --background, плюсы — воспроизводимость и батчи, минусы — полный пересчёт и агент видит только рендер.
Оба пути ведут в один и тот же модуль bpy. Разница в том, где живёт результат: в открытом окне Blender или в файле, который можно запустить ещё раз. · схема, собрана для материала

Путь 1: Blender MCP

Понадобятся Blender с blender.org (версия 3.0 и выше), Python и менеджер пакетов uv. Самый известный MCP — открытый проект ahujasid/blender-mcp. Установка в три шага:

  1. Скачай из репозитория файл addon.py и поставь его в Blender: Edit → Preferences → Add-ons → Install. В боковой панели 3D-вида появится вкладка BlenderMCP с кнопкой Connect.
  2. Подключи MCP-сервер к агенту. Для Claude Code это одна команда в терминале: claude mcp add blender -- uvx blender-mcp. Для Claude Desktop, Cursor и других — строка в конфиге, как в README.
  3. Нажми Connect в Blender, запусти агента и попроси показать сцену.
Окно Blender 4.3 со стандартным кубом, камерой и лампой. В боковой панели 3D-вида открыта вкладка BlenderMCP с полем Port 9876 и кнопкой Start MCP Server, вкладка обведена жёлтым маркером.
После установки аддона в боковой панели появляется вкладка BlenderMCP: порт и одна кнопка. Нажал, и Blender ждёт команды агента на localhost. · Blender MCP · источник: github.com/ahujasid/blender-mcp

Что умеет этот MCP, кроме выполнения кода: смотреть на вьюпорт и рендер несколькими ракурсами, искать и ставить HDRI, текстуры и модели с Poly Haven (ключ не нужен), тянуть модели со Sketchfab, генерировать меши через Rodin, Meshy, Tripo или Hunyuan3D прямо в сцену. Это соединяет тему «Генерация 3D-моделей» с этой: сгенерировал, поставил, осветил, отрендерил в одном диалоге.

Слева окно Codex с запросом «RUN mcp for blender and create a wooden pyramid» и ответом «Created Wooden Pyramid in Blender using MCP, with warm walnut grain and softly beveled edges». Справа вьюпорт Blender с деревянной пирамидой, выделенной оранжевым контуром.
Один запрос из Codex, две минуты работы, и пирамида с текстурой дерева стоит во вьюпорте. Агент видит результат сам: правая панель — то, что он «посмотрел» после выполнения. · Codex + Blender MCP · источник: github.com/ahujasid/blender-mcp

Два ограничения из практики. Сложные запросы отваливаются по таймауту, проси маленькие шаги. Одновременно должен работать один экземпляр MCP, иначе команды путаются. И одна деталь, которую я понял не сразу: аддон слушает обычный сокет на порту 9876 с простым JSON-протоколом. Значит, к нему можно подключиться и без MCP-сервера, крошечным скриптом. У меня это bmcp.py на 60 строк: python3 bmcp.py exec build.py запускает файл внутри живого Blender и печатает его вывод, bmcp.py shot out.png снимает вьюпорт. Агент с терминалом пользуется им так же, как MCP-инструментами, а отлаживать такой скрипт проще.

Есть и официальный экспериментальный MCP от Blender Lab. Он требует Blender 5.1 и выше и заточен под анализ: найти тяжёлые объекты, переименовать данные, объяснить, как устроены материалы и Geometry Nodes. Для сборки предметов он не предназначен. Сам Blender при этом заявил, что генеративный ИИ в редактор встраивать не планирует. Поэтому всё, что описано здесь, живёт снаружи Blender, в аддонах и агентах.

Путь 2: Python-скрипты

Без MCP работает и обычный агент с терминалом (тема «CLI и терминальные ИИ-агенты»). Он пишет скрипт на bpy, а запускаешь его ты. Два способа: открыть вкладку Scripting в Blender, вставить и нажать Run, либо из терминала без интерфейса:

blender --background --python build.py -- --step 3 --out renders/step3.png

Агент сам может запускать эту команду, читать логи и смотреть на сохранённые рендеры. Получается тот же цикл «сделал, посмотрел, поправил», что в теме «Моушн-ролик кодом», только без живого окна. Плюсы: скрипт лежит в репозитории, пересобирает сцену с нуля детерминированно, гоняет батчи (десять цветов товара, двадцать ракурсов) и работает на сервере без монитора. Минусы: каждая итерация это полный пересчёт, и агенту нужно самому рендерить картинку, чтобы увидеть результат.

Структура скрипта, которую полезно потребовать сразу: размеры и материалы вынесены в отдельный модуль в начале, сборка разбита на функции по деталям, у каждого шага свой флаг --step и свой контрольный рендер. Дом у меня собран именно так: build_house.py принимает --step 1…6, а рядом лежат plan_data.py с измерениями, blockout.py, details.py, courtyard.py, materials.py. Тогда правка «парапет на 40 сантиметров» это одно число, а не новый диалог.

Один урок про смешивание путей. Пересобирать сцену скриптом через MCP под открытым окном Blender можно, но не когда во вьюпорте включён режим Rendered: пересборка удаляет и создаёт заново сцены и материалы прямо под рендером, и 1 октября 2026 это уронило мне Blender вместе с несохранёнными правками. Безопасный путь — blender --background в отдельном процессе, пока окно закрыто или открыт другой файл.

Безопасность: агент выполняет произвольный код

И MCP, и скрипты выполняют на твоём компьютере любой Python, который написала модель. Сокет MCP без авторизации, безопасный режим по умолчанию выключен, официальный MCP прямо предупреждает, что защиты нет и советует виртуальную машину. Минимальная гигиена: сохраняй файл перед каждым запуском, держи подключение на localhost, не открывай в этой же сессии чужие файлы и промпты с непонятных сайтов (prompt injection из темы «CLI и терминальные ИИ-агенты» работает и здесь), для серьёзной работы заведи отдельного пользователя или виртуалку.

Чертёж-бриф до первой команды

Мой первый заход в Blender MCP был диктофон TP-7 от Teenage Engineering: на сайте лежат красивые рендеры со всех ракурсов, осталось повторить. Запрос в духе «делай хорошо, плохо не делай» дал по традиции ужасное недоразумение. Дальше я вёл агента по шагам, как рукастого, но невнимательного специалиста, упёрся в потолок и объяснял, как поправить каждый миллиметр коробочки. Магия пропала: это не «вжух».

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

Задача: построить детализированную 3D-модель [предмета] в Blender через blender-mcp на основе приложенных референсов.

Референсы (используй именно в этой роли):
- plan_A_1.jpg, plan_A_2.jpg — план, вид сверху, ОСНОВНОЙ источник геометрии в плане
- plan_alt.jpg — альтернативный план. НЕ смешивай с основным. Если что-то берёшь оттуда, явно проговори
- facade_1.jpg … facade_3.jpg — фасады: что где стоит, какие проёмы
- iso_1.jpg … iso_3.jpg — общие виды только для сверки массинга и материалов, НЕ источник размеров

Элементы для моделирования: [нумерованный список деталей с расположением и материалом; ключевые детали стиля пометить «не забыть»]

Масштаб: за точку привязки взять [известный размер: высота двери ≈ 2,05–2,1 м], от неё вывести остальное. В отчёте укажи итоговые габариты.

Порядок работы, поэтапно, с рендером после каждого шага, дальше не переходить без подтверждения:
1. Референс-плоскости в сцене: план под моделью, фасады в своих проекциях, масштаб по привязке
2. Блокинг примитивами, сверка силуэта с фасадами и планом
3. Детализация
4. Окружение и декор
5. Материалы
6. Экспорт

Единицы — метры, Z вверх, origin — [угол предмета]. Если референсы противоречат друг другу и это нельзя разрешить, не додумывай, а сообщи и предложи, на какой ориентироваться.

Три вещи в этом брифе делают всю работу. У каждого референса своя роль, и агенту запрещено смешивать источники. Масштаб привязан к одному известному размеру, остальное выводится из него. И прямое правило «не додумывай, а сообщи»: без него модель молча выберет вариант и нарисует убедительную отсебятину.

Положи бриф в docs/blueprint.md, референсы в refs/, а правила «сверяться с чертежом после каждого шага» в CLAUDE.md (тема «Терминальные агенты: настройка под себя»):

## Проект: модель [предмет] в Blender
- Источник истины: docs/blueprint.md и refs/. Расходишься с ними — останавливайся и спрашивай
- Единицы: миллиметры. Центр предмета в начале координат, низ на нуле
- Один шаг за сообщение: референсы → блокаут → детали → материалы → свет → камера → рендер
- После каждого шага: контакт-лист 4 ракурса (спереди, сбоку, три четверти, сверху) в reviews/, рядом с теми же ракурсами из refs/
- Каждое утверждённое решение переноси в build.py
- Ассеты: HDRI и текстуры только с Poly Haven, модели со Sketchfab только с лицензией CC
- Сохраняй .blend перед выполнением любого кода

Измерить, а не прикинуть: TP-7

Вторая попытка с диктофоном пошла иначе. Вместо «посмотри на фото и повтори» агент получил задачу измерить. Он написал скрипты, которые отделяют предмет от фона маской, считают масштаб в пикселях на миллиметр по известной ширине корпуса, а потом сканами яркости и цветовыми масками находят отверстия, кнопки и гравировки. Из этого получился чертёж в цифрах: корпус 84,3 × 123,7 × 21,5 мм, положение каждой детали. Модель собрана по этим числам, в ней 173 объекта.

Проверка тоже не на глаз. Рендер накладывается на референс красно-зелёным: красный канал от фото, зелёный от рендера. Там, где силуэты совпали, получается жёлтый. Там, где красное или зелёное торчит отдельно, расхождение. Совпадение силуэтов в итоге 95,5%, и каждое расхождение видно ещё до того, как ты откроешь оба кадра рядом.

Красно-зелёное наложение: фото диктофона TP-7 в красном канале и рендер модели в зелёном. Почти весь корпус, круглый диск, три кнопки и дисплей жёлтые, по правому краю и у ручки внизу тонкие красные и зелёные полоски.
Контрольное наложение рендера на референс. Жёлтое совпало. Красные и зелёные кромки справа и у ручки показывают, где модель ещё расходится с фото на доли миллиметра. Такая картинка заменяет десять минут сравнения «на глаз». · Blender MCP + Claude Code, скрипты измерения и наложения
Два кадра торца диктофона друг над другом: сверху фотография с разъёмом USB-C, тремя отверстиями с цифрами 3, 2, 1 и колёсиком справа, снизу рендер того же торца с теми же элементами на тех же местах.
Фото сверху, рендер снизу: торец с разъёмами. Расположение отверстий и колёсика взято из измерений, а не подобрано. Видно и то, чего ещё нет: гравировка цифр в рендере бледнее, фаска у USB не доведена. · Blender MCP + Claude Code, Cycles
Студийный рендер диктофона TP-7 на белом фоне, три четверти сверху: серый матовый корпус, большой диск с центральной шайбой, три широкие клавиши, оранжевая кнопка записи, дисплей с таймером 0.00.04, рифлёное колёсико на торце.
Финальный кадр того же проекта. Матовый металл, фаски, гравировки и дисплей. Но между этим кадром и первым «недоразумением» лежат измерения, наложения и бюджет больше ста долларов. · Blender MCP + Claude Code, Cycles

Урок простой. Агент хорошо пишет код, который измеряет, и плохо оценивает пропорции взглядом. Отдай ему измерение как задачу, и он сделает чертёж сам. Сверку тоже сделай кодом: наложение, разница силуэтов, число в процентах. Тогда «похоже или нет» перестаёт быть спором.

Ворота на практике: дом за один день

Эмиратский дом с ветровой башней собран скриптами за один день, с 12:42 до 17:21, по брифу выше. Референсы для него я сгенерировал в Nano Banana: план, три фасада и три общих вида, в одном стиле и с одним домом. Дальше шесть шагов, у каждого свой --step, свой .blend и свой рендер.

Шаг 1: референс-плоскости

Пустая сцена Blender с метровой сеткой на полу, осями в начале координат и двумя вертикальными плоскостями с фотографиями фасадов: башня, арочные ниши, деревянная дверь; на полу лежит план

Шаг 2: блокаут

Белый блокаут дома из коробок на той же сетке: два этажа, квадратная башня, внутренний двор, торчащие балки по периметру; за ним плоскости с фасадами для сверки силуэта

Шаг 3: детали

Тот же дом с деталями: арочные проёмы с деревянными решётками, портал входа, двустворчатая дверь с заклёпками, балки

Шаг 4: двор и свет

Дом с внутренним двором: финиковая пальма во дворе, мягкий солнечный свет и тени

Шаг 5: материалы

Дом с материалами: песочная штукатурка с трещинами, тёмное дерево дверей и решёток, тени от солнца
Пять ворот одного дома, каждый кадр — отдельный запуск build_house.py с флагом --step. На первом шаге в сцене нет ни одной стены: только метровая сетка, оси и плоскости с референсами, по которым всё остальное выверяется. Блокаут на втором шаге стоит прямо перед фасадом, чтобы силуэт сравнивался в кадре. · Claude Code + Blender 4.3, скрипт на bpy, Cycles

Три приёма отсюда повторяй в любом проекте.

  • Референсы внутри сцены. Первым шагом скрипт ставит план на пол и фасады вертикально, в правильном масштабе. Масштаб посчитан в refs.py по привязке: дверь 2,07 м, значит 132,9 пикселя на метр на фасаде и 105 на плане. Любой следующий шаг рендерится на фоне этих плоскостей, и расхождение видно без отдельного сравнения.
  • Метровая сетка и оси в кадре. Пока нет материалов, по сетке читается масштаб, а по цветным осям — где origin. Без них блокаут на рендере выглядит убедительно при любых размерах.
  • Файл на каждый шаг. house_step1.blend, house_step2.blend и так далее. Шаг не получился — откатываешься к предыдущему файлу, а не распутываешь историю.
Ортографический вид фасада: поверх фотографии фасада с башней и дверью полупрозрачно наложен серый блокаут модели; контуры блоков совпадают с объёмами на фото, башня и портал на своих местах.
Сверка на втором шаге: блокаут наложен на фасад в ортографической камере. Серые объёмы повторяют фотографию, и дальше можно детализировать. Если бы башня съехала, это было бы видно здесь, а не на финальном рендере. · Claude Code + Blender 4.3, скрипт на bpy
Финальный рендер эмиратского дома с улицы: песочные стены с трещинами, арочные окна с деревянными решётками, массивная дверь с заклёпками, деревянные балки, торчащие из стен, ветровая башня с пальмой за ней, светлое небо.
Шестой шаг, съёмка с улицы. Все материалы процедурные: штукатурка с трещинами и пятнами, состаренное дерево. Дом не идеален, но он стоит ровно там, где на плане, и в тех пропорциях, что на фасадах. · Claude Code + Blender 4.3, скрипт на bpy, Cycles

Минимальный пример: один предмет двумя этапами

Для этого материала я собрал предмет попроще, чтобы показать те же ворота на одном файле: карманный диктофон 120 × 60 × 18 мм. Скрипт scripts/blender-demo-object.py задаёт размеры словарём, собирает детали по функциям и рендерит четыре ракурса на каждом этапе. Запуск через --background, без интерфейса.

ДоЧетыре серых рендера одного предмета: плоская коробка 120 на 60 миллиметров с шестью квадратными кнопками и круглым диском, без фасок и материалов. Ракурсы три четверти, сверху, сбоку и сзади.

Ворота 1: блокаут. Только габариты из чертежа и расположение деталей.

ПослеТе же четыре ракурса после доработки: корпус из матового алюминия со скруглёнными рёбрами, чёрные кнопки с фасками и одна оранжевая, чёрный диск с оранжевой меткой, ряд отверстий микрофона, студийный свет.

Ворота 3–5: фаски, материалы и три источника света.

Между блокаутом и финалом ровно те шаги, что в списке ниже. Правка «диск на 2 мм правее» здесь одно число в словаре. · Blender 4.3, Eevee, скрипт на bpy
Промпт

Чертёж в начале скрипта

корпус 120 × 60 × 18 мм, скругление рёбер 3 мм, матовый анодированный алюминий
диск радиус 14 мм, высота 2 мм, чёрный, оранжевая метка; центр (38, 0)
шесть кнопок 10 × 10 × 1,5 мм в два ряда, фаска 0,8 мм, первая оранжевая
камеры: три четверти, сверху, сбоку, сзади; объектив 85 мм

Порядок шагов тот же, что у моделлеров, и агент его знает. Твоя роль — ворота между шагами.

  1. Референсы в сцене. План под моделью, фасады или фото по сторонам, масштаб по известному размеру.
  2. Блокаут. Примитивы в точных габаритах из чертежа. Никаких фасок и кнопок. Сравни силуэт с референсом наложением.
  3. Детали. Фаски, кнопки, разъёмы, надписи, по чертежу с размерами. Один блок деталей за шаг.
  4. Материалы. PBR из чертежа: цвет, шероховатость, металличность. Текстуры с Poly Haven.
  5. Свет. HDRI для общего света плюс рисующий, заполняющий и контровой. Под готовые материалы, не раньше.
  6. Камера. Фокусное расстояние и кадрирование как на референсных рендерах. Для продуктовых кадров 50–85 мм.
  7. Рендер. Eevee для контрольных листов, Cycles для финала. Разрешение и число сэмплов проси назвать до запуска, иначе ночь уйдёт на один кадр.

После каждого шага агент рендерит контакт-лист и сам пишет, где расхождения с референсом. Ты утверждаешь словом «дальше» или возвращаешь. Это ворота из темы «Моушн-ролик кодом», перенесённые в объём.

Экспорт в веб: две ловушки glTF

У TP-7 есть веб-вьюер на Three.js: tp7-3d.vercel.app, модель в GLB на 2,1 МБ, орбита мышкой, семь пресетов камеры, код в репозитории. По дороге из Blender в браузер я поймал две ошибки, которые невидимы в самом Blender.

Ловушка 2: анизотропия без тангенсов

Диктофон во вьюере Three.js: верхняя грань и клавиши нормальные, а боковые стенки корпуса покрыты чёрно-белым шумом, будто помехи на телевизоре

Ловушка 1: вывернутая оболочка

Тот же диктофон полупрозрачный: корпус исчез, сквозь него видны внутренние стенки, кнопки и разъёмы с обратной стороны, нижняя грань просвечивает

После обеих правок

Тот же диктофон целый: серый матовый корпус, ровные боковые стенки, тень на полу
Обе ловушки воспроизведены на той же модели в том же вьюере. Слева включена анизотропия шлифованного металла без тангенсов в геометрии: боковые стенки превращаются в шум. В центре порядок вершин перевёрнут, как после булевых операций: браузер отсекает «задние» грани, и корпус становится прозрачным. Справа модель после проверки объёма и обнуления анизотропии. · Three.js, вьюер tp7-3d
  • Вывернутая оболочка. После десятков булевых операций нормали корпуса смотрели внутрь. Cycles это не замечает, а браузер с отсечением задних граней делает корпус невидимым. Проверяется кодом: знак объёма меша, посчитанного по треугольникам, отрицательный у вывернутой модели.
  • Чёрные грани от анизотропии. Шлифованный металл Blender экспортирует как расширение KHR_materials_anisotropy. Без тангенсов в геометрии Three.js красит такие поверхности в чёрный. Вьюер обнуляет анизотропию при загрузке.

И ещё одно: металл с metalness = 1 освещается только отражениями окружения. На пустой сцене боковые стенки уходят в чёрный, поэтому вьюер строит процедурный студийный купол с софтбоксами. Сжатие и форматы для веба разобраны в теме «Генерация 3D-моделей».

Скилл: иконка из SVG одной командой

Третий проект — объёмная иконка из плоского логотипа. Задача повторяется у каждого бренда, поэтому вместо диалога она упакована в скилл svg-to-3d-icon (тема «Терминальные агенты: настройка под себя»): один скрипт svg3d.py на 800 строк, который сам находит Blender, перезапускает себя внутри него и отдаёт JSON с итогом. Скилл открытый, ставится одной командой из README в папку скиллов агента.

python3 scripts/svg3d.py logo.svg --preview          # 768 px, 20 секунд, лист для ревью
python3 scripts/svg3d.py logo.svg --preset matte --depth 0.24 --relief 0.07
python3 scripts/svg3d.py logo.svg --turntable 96     # финал 2048 px + видео с вращением

Рабочий цикл внутри скилла тот же, что во всей теме: превью, лист для ревью, подстройка флагами, финал, проверка. Лист показывает три ракурса на светлом и тёмном фоне, и по нему видно, что силуэт совпал с SVG, фаски чистые, тень не обрезана.

Лист ревью 3D-иконки: шесть рендеров лаймовой квадратной плашки со скруглёнными углами и чёрной глянцевой буквой А. Верхний ряд на светлом фоне, нижний на чёрном; ракурсы три четверти, фронт и изометрия с мягкой контактной тенью.
Лист ревью из скилла: три ракурса, два фона, одна команда. По нему принимается решение «финал» или «подкрутить флаги», и только потом запускается рендер на три минуты на ракурс. · svg-to-3d-icon, Blender 4.3, Cycles

Два правила в скилле заработаны ошибками, и они переносятся на любую продуктовую сцену. Первое: цвет бренда зависит от экспозиции. Световая установка откалибрована так, чтобы грань, повёрнутая к камере, рендерилась ровно в цвет заливки SVG. Добавил света в 2,4 раза, и лаймовый #C6E800 превратился в обычный жёлтый. Поэтому скрипт сам считает color_check и предупреждает. Второе: пол невидим для отражений. Иначе каждая глянцевая грань отражает освещённый пол, чёрный глиф сереет, а цвета мутнеют.

Когда нужно глубже, чем скилл, начинается ручная работа, и там агент тоже помогает, но по-другому. Гиперреалистичная версия той же иконки — это файл с одиннадцатью сценами и материалами, у которых все настройки выведены на одну групповую ноду: Color, Roughness, Brushing, Sparkle. Память проекта лежит в README: какие приёмы сработали (view transform Khronos PBR Neutral держит лаймовый, AgX уводил его в горчичный), что ломалось (микрорельеф мельче пикселя даёт «соль-перец») и как пересобрать всё из кода. Без такого README через месяц проект пришлось бы вскрывать заново.

Рендер иконки на чёрном фоне: квадратная графитовая плашка со скруглёнными углами и фаской, покрытая металлик-краской, на ней буква А из шлифованного алюминия с полированными гранями. По плашке проходит мягкая полоса отражённого света.
Та же буква, другой уровень: плашка из графитового металлика с микрохлопьями краски, буква из шлифованного алюминия с полированными фасками. Ключевой свет освещает плашку, но не букву (light linking), иначе металл зеркалил бы лампу. Это уже не одна команда, а файл с одиннадцатью сценами, материалами на групповых нодах и README на две страницы. · Blender 4.3, Cycles, сцены собирает iconlib.py

Где больно и сколько стоит

Честная картина на осень 2026 по трём проектам. Концепт-рендеры и абстрактные крупные планы получаются быстро и хорошо. Иконка из SVG — одна команда. Дом в архитектурном стиле по сгенерированным референсам — один день скриптами, с материалами и двором. Точный гаджет с десятками деталей упирается в потолок: даже на сильных моделях много косяков, которые придётся ловить руками, а для этого нужны насмотренность и понимание, как устроено 3D.

Публичных смет на 3D с агентом пока нет, так что считай по своим счётчикам. Бюджет TP-7 до результата, к которому нет вопросов, ушёл в десятки долларов, то есть заметную часть недельного лимита подписки, и рос с каждой деталью. Дороже всего обходятся не сами скрипты, а проверки: каждый контрольный лист — это картинка в контексте, каждая итерация «поправь и перерендери» — новый проход по всей сцене. Часто дешевле купить готовую модель на стоке.

При этом скорость и сам воркфлоу местами впечатляют: пишешь задачу агенту, а через пару часов он присылает рендеры. Правильная стратегия: начинать с простых предметов, держать чертёж, измерять кодом, не экономить на контрольных листах и считать токены как бюджет проекта (тема «Тарифы и лимиты»).

Примеры команд для практики

Куда вставлятьClaude Code с подключённым Blender MCP
Покажи текущую сцену: список объектов с размерами, материалы, свет, камера. Ничего не меняй
Вот фото предмета с четырёх сторон в refs/. Напиши скрипт, который отделит предмет от фона, посчитает пикселей на миллиметр по известной ширине [X мм] и найдёт положение отверстий, кнопок и надписей. Результат сохрани в docs/measurements.md таблицей
Прочитай docs/blueprint.md и refs/. Поставь референс-плоскости в сцену в правильном масштабе, собери блокаут из примитивов в точных габаритах. Отрендери наложение блокаута на фасад в ортографической камере и перечисли расхождения в процентах. Жди моего «дальше»
Отрендери модель с той же камеры, что фото refs/front.jpg, и наложи на фото красно-зелёным: фото в красный канал, рендер в зелёный. Посчитай совпадение силуэтов в процентах
Поставь HDRI студии с Poly Haven, добавь рисующий свет слева-сверху и мягкий контровой. Камера 85 мм, ракурс как на refs/front-34.jpg. Контрольный рендер в Eevee 1280×720
Перенеси всё, что мы утвердили в этой сессии, в build.py: размеры и материалы отдельным модулем, сборка по функциям, флаг --step на каждый этап, в конце камера и контакт-лист. Запусти его в фоне и покажи, что сцена пересобралась один в один
Куда вставлятьClaude Code, Codex CLI или Gemini CLI без MCP, с установленным Blender
Напиши build.py на bpy, который собирает [предмет] по docs/blueprint.md и рендерит четыре ракурса в renders/. Запусти через blender --background, посмотри на рендеры и сравни с refs/. Исправь расхождения и запусти ещё раз, пока пропорции не сойдутся
Экспортируй модель в GLB и проверь перед экспортом: знак объёма каждого меша положительный, у материалов нет анизотропии без тангенсов, суммарный размер до 3 МБ. Собери страницу с Three.js: орбита, автоповорот, студийный купол для металла
Сделай из build.py батч: десять вариантов цвета корпуса из палитры в docs/colors.md, по одному рендеру три четверти на каждый, имена файлов по названию цвета
Заверни пайплайн в скилл: на вход SVG логотипа, на выход три ракурса на светлом и тёмном фоне, GLB и .blend. Превью за 20 секунд, финал в фоне. В JSON-итоге проверка цвета бренда на грани, повёрнутой к камере
Мини-задание

Возьми простой предмет: визитку, зажигалку, книгу, кружку. Положи чертёж-бриф из темы «3D с ИИ» в docs/blueprint.md, референсы в refs/, правила в CLAUDE.md. Подключи Blender через MCP или работай скриптами, выбери сам и запиши почему. Первым шагом поставь референсы в сцену и попроси агента измерить предмет кодом, а не на глаз. Проведи его через семь ворот, после каждого утверждай контакт-лист, а блокаут сверь наложением на референс. В конце запусти build.py в чистой сцене: если предмет пересобрался и наложение даёт больше 90% совпадения силуэта, пайплайн у тебя есть. Дальше его можно усложнять.

Время: 2–3 часа
Готово, если: агент собрал в Blender простой предмет по твоему чертежу-брифу, после каждого шага отдавал контакт-лист с четырёх ракурсов, и финальный рендер совпадает с референсом по пропорциям

Источники

  1. Blender MCP (ahujasid)github.com

    Аддон и MCP-сервер: выполнение Python в Blender, просмотр вьюпорта, Poly Haven, Sketchfab, генераторы

  2. Blender Lab: MCP Serverblender.org

    Официальный экспериментальный MCP для Blender 5.1+: анализ сцены, без защиты от кода модели

  3. Upcoming Blender Development Fund and AI policiesblender.org

    Blender не планирует встраивать генеративный ИИ в сам редактор

  4. Blender Python APIdocs.blender.org

    Модуль bpy: вся функциональность Blender из скрипта

  5. Blender Command Line Argumentsdocs.blender.org

    Запуск Blender без интерфейса со скриптом: --background --python

  6. glTF 2.0: KHR_materials_anisotropygithub.com

    Расширение, в которое Blender экспортирует анизотропный металл; без тангенсов в геометрии three.js красит его в чёрный

  7. Poly Haven Licensepolyhaven.com

    HDRI, текстуры и модели под CC0

Нашёл ошибку или устаревший факт? Напиши: hey@iskra.guide