Саймон Уиллисон случайно выяснил, что современные фронтирные модели отлично работают с Blender Python API — достаточно установить приложение и написать один промпт. Никаких плагинов, никакой сложной настройки. Вот как это работает и как подключить к этому Cursor или Claude, если Codex вам не подходит.
Зачем вообще гонять Blender через агента
Blender умеет рендерить фотореалистичные сцены, анимации и 3D-объекты. Его Python API (bpy) позволяет управлять всем этим программно: создавать меши, расставлять свет, настраивать камеру, запускать рендер. Раньше это требовало либо знания API, либо часов в интерфейсе.
Coding-агент берёт на себя написание Python-скриптов под конкретную задачу. Вы описываете сцену словами — агент генерирует .blend-файл и рендерит изображение. Это полезно для быстрых прототипов, генерации датасетов или просто экспериментов с визуализацией без погружения в интерфейс Blender.
Самый быстрый путь: ChatGPT Codex
Уиллисон использовал ChatGPT Codex — облачный coding-агент от OpenAI, который умеет запускать код в изолированной среде. На macOS схема выглядит так.
Шаг 1. Установите Blender с официального сайта:
# Скачайте .dmg с blender.org и перетащите в /Applications
# Проверьте, что Blender доступен по пути:
ls /Applications/Blender.appШаг 2. Откройте ChatGPT Codex и напишите промпт, явно указав путь к приложению:
Use the already installed /Applications/Blender to render a scene of a pelican riding a bicycleАгент сам найдёт бинарник внутри .app, напишет Python-скрипт через bpy и запустит Blender в headless-режиме (без GUI). Результат — готовый рендер.
Шаг 3. Итеративно улучшайте сцену следующими промптами:
OK add a background and a lot of flairOK make it a whole lot betterКаждый следующий промпт агент воспринимает как правку к предыдущему скрипту. Уиллисон прошёл три итерации и получил финальный рендер. По данным AgentsView, три промпта на модели gpt-6-astra обошлись бы в $4.24 по API-ценам — сам он уложился в рамки подписки Codex.
Альтернатива: Blender MCP для Cursor и Claude
Если Codex недоступен или вы хотите работать прямо из IDE, есть два зрелых MCP-сервера (Model Context Protocol — стандарт для подключения инструментов к LLM).
Вариант A — blender-mcp (ahujasid): сообщественный плагин, работает с Claude Desktop и Cursor.
uvx blender-mcp install-addonПосле этого зайдите в Blender → Edit → Preferences → Add-ons, найдите blender-mcp и включите его. Теперь Claude или Cursor видят Blender как инструмент и могут отправлять команды напрямую в открытую сцену.
Вариант B — blender-remote (igamenovoer): аддон + MCP-сервер с поддержкой одновременного доступа от LLM и Python-клиента. Подходит, если нужна автоматизация из нескольких источников параллельно.
Вариант C — carlosh7/blender-mcp: самый полный вариант, более 200 инструментов для агентов (Claude Code, Cursor), headless CI-тестирование, security-first дизайн. Поддерживает macOS, Windows и Linux.
Как агент пишет скрипты под Blender
Под капотом агент генерирует Python-код, который использует модуль bpy. Типичный скрипт выглядит примерно так:
import bpy
# Очистить сцену
bpy.ops.wm.read_factory_settings(use_empty=True)
# Добавить источник света
bpy.ops.object.light_add(type='SUN', location=(5, 5, 10))
# Настроить камеру
bpy.ops.object.camera_add(location=(0, -5, 2))
bpy.context.scene.camera = bpy.context.object
# Запустить рендер и сохранить
bpy.context.scene.render.filepath = '/tmp/output.png'
bpy.ops.render.render(write_still=True)Агент запускает Blender в headless-режиме с флагом --background и передаёт скрипт через --python:
/Applications/Blender.app/Contents/MacOS/Blender --background --python scene.pyЭто работает без открытия GUI — Blender рендерит и завершает процесс.
Где ломается
Путь к бинарнику. Если написать просто blender без полного пути, агент может не найти приложение. Всегда указывайте /Applications/Blender.app/Contents/MacOS/Blender явно или проверяйте, что blender есть в $PATH.
Версия Blender. API bpy меняется между мажорными версиями. Скрипт, сгенерированный под Blender 4.x, может не работать в 3.x. Уточняйте версию в промпте, если нужна воспроизводимость.
Сложные меши. Агент хорошо справляется с примитивами и простыми сценами. Детализированные органические объекты (тот же пелекан) он строит из примитивов и модификаторов — результат будет схематичным, не фотореалистичным.
MCP и живая сцена. При работе через MCP-сервер агент модифицирует открытую сцену. Если вы что-то меняли руками, агент может перезаписать изменения без предупреждения. Сохраняйте .blend перед каждой сессией с агентом.
Стоимость на API. $4.24 за три промпта на gpt-6-astra — это при активном использовании быстро накапливается. Для экспериментов лучше использовать подписку Codex или локальные модели через ollama + MCP.
Что попробовать дальше
Попробуйте carlosh7/blender-mcp с Claude Code — там больше 200 готовых инструментов, и агент может управлять материалами, освещением и анимацией отдельными командами. Если нужна полная автономность без GUI, настройте headless-рендер в CI: blender-remote поддерживает такой сценарий из коробки.
FAQ
Нужно ли платить за Blender?
Нет. Blender — бесплатный open-source инструмент. Скачайте с blender.org и установите как обычное macOS-приложение.
Работает ли это на Windows и Linux?
Да. Путь к бинарнику будет другим (например, C:\Program Files\Blender Foundation\Blender 4.x\blender.exe на Windows), но логика та же. MCP-серверы carlosh7 и blender-remote официально поддерживают все три платформы.
Можно ли использовать локальную модель вместо GPT?
Можно, если подключить её через MCP-клиент (например, Cursor с локальным ollama). Качество генерируемых bpy-скриптов будет зависеть от размера и обучения модели — мелкие модели часто ошибаются в синтаксисе API.
Агент может рендерить анимацию, а не статичный кадр?
Да. Достаточно задать диапазон кадров в промпте и указать выходную папку. Агент сгенерирует скрипт с bpy.context.scene.frame_start, frame_end и запустит bpy.ops.render.render(animation=True).
Что такое headless-режим и зачем он нужен?
Headless — это запуск Blender без графического интерфейса, только через командную строку. Агент использует его, чтобы выполнять рендер автономно, не открывая окно приложения. Флаг --background включает этот режим.



