Меня зовут Иван Стародубцев, я автор курса для новичков «Лучший по Python» на Stepik. Он не просто так называется: за год его прошли почти 30 тысяч учеников, которые оставили 3,8 тысячи отзывов со средней оценкой 5 звёзд. Это курс, написанный максимально простым языком в формате диалога, без снобизма и математики. Вместо скучных формул там интересные задачи из жизни, а уже на второй неделе студенты пишут первые игры.
В какой-то момент я столкнулся с проблемой, знакомой многим авторам учебного контента: курсу нужны десятки и сотни иллюстраций. Случайные картинки из интернета не подходят — это должна быть настоящая визуальная вселенная с постоянными персонажами, узнаваемыми локациями и мини-историями, которые раскрываются на протяжении всего материала.
Работа иллюстратора на 100–150 картинок стоит 300–450 тысяч рублей. Это дорого, долго и негибко: захотел добавить новую сцену — снова договариваешься, ждёшь, платишь. Поэтому я решил выстроить собственную схему по производству иллюстраций на нейросетях. Сегодня расскажу, как это работает и, главное, как помогает студентам.
Зачем курсу визуальная вселенная
Когда я только начинал делать курсы, я думал, что главное — это качество материала: хороший текст, чёткие задачи, логичная структура. Но постепенно стало понятно: визуальный ряд влияет на вовлечённость не меньше, чем содержание.
Студент онлайн-курса находится один на один с экраном. Нет преподавателя рядом, нет одногруппников, нет физического класса. Всё, что удерживает его внимание, — это происходящее на экране. И если каждый урок выглядит, как набор текстовых блоков с разрозненными стоковыми картинками, мозг быстро отключается.
Эту проблему решают повторяющиеся персонажи. Они создают ощущение преемственности: студент видит знакомого героя и понимает, что продолжает путешествие по курсу, а не только читает очередную статью. Это работает как геймификация, но без баллов и достижений: просто визуальное повествование, которое делает обучение чуть более живым.

В моём случае персонажи — это оптимистичный подросток Петя и токсичный рыжий кот Басик. Они вместе ходят в магазин, едут на дачу, спорят о сардельках. Студенты запоминают их, ждут новых сцен, иногда даже присылают свои варианты диалогов.
Есть простое правило: хочешь завлечь людей — расскажи им историю. Если делаешь курс для сеньоров — хорошо, там может быть сухой код без картинок. Но если работаешь на широкую аудиторию, история — это мастхев. На самом деле мои конкуренты — это не другие курсы по Python. Мои конкуренты — это Netflix, TikTok и видеоигры. Человек вечером приходит домой уставший. У него выбор: потупить в сериал или поучиться. И чтобы он выбрал учёбу, мне нужно соперничать с сериалами. Для этого нужно учить совершенно по-новому. |
Проблема: нейросети не умеют держать серийность
Если генерировать картинки в лоб, обычно получается одна удачная и три странных. Нейросети хороши для разовых иллюстраций, но плохо справляются с серийностью.
Например, дважды попросишь нарисовать «мальчика в магазине» — получишь двух разных мальчиков. Сгенеришь «мальчика в магазине», потом «кота в магазине» — окажется, что это два разных магазина. Захочешь повторить удачный стиль — модель забудет детали и выдаст что-то похожее, но не то.
А для учебного курса нужна именно повторяемость: один и тот же герой, один и тот же фон, узнаваемые детали. Иначе визуальная вселенная рассыпается.
Поэтому я выстроил схему, которая решает эту проблему. Она состоит из четырёх элементов:

Почему Krea AI и модель Nano Banana
Я перепробовал неско��ько платформ, прежде чем остановиться на Krea AI. Это маркетплейс нейросетей: слева список моделей, выбираешь нужную и генерируешь. Там же есть видео, озвучка, всё в одном интерфейсе. Работает без VPN, с понятной оплатой — тарифы примерно 1 000, 2 000 и 6 000 рублей.

Есть и другие способы получить доступ к Nano Banana — например, за 1 000–1 200 рублей можно примерно на год взять Google AI Studio, но интерфейс там менее удобный. Если иллюстрации нужны постоянно, проще сразу взять максимальный тариф и не думать про лимиты.
Как я генерирую персонажей
Главный принцип: не пытаться сгенерировать идеал с первого раза. Я начинаю с простого промта, получаю прототип, а дальше развиваю его по итерациям.
Вот как появился Петя:
1. Стартовый промт: «Нарисуй подростка, любознательного. Стиль Pixar, полуреализм. Он гуляет по Красной площади и ест мороженое». Почему именно так:
подросток — золотая середина между «слишком детский» и «слишком взрослый»;
любознательный — задаёт эмоцию, а не просто внешность;
контекст («гуляет», «ест мороженое») — чтобы была поза и действие, а не безликий портрет.

2. Модель отдаёт 2 варианта, я выбираю лучший. Прикрепляю его в новое окно генерации и пишу: «теперь он у Москва-Сити», «сделай свитер зелёным», «пусть в руках ноутбук». Так я развиваю удачный прототип, а не создаю каждый раз нового персонажа.
3. Важно: правки лучше вносить по одной. Если в одном запросе попросить и перекрасить свитер, и добавить объект, и сменить фон — модель сделает 1–2 пункта, но не все. Поэтому я иду по шагам: сначала цвет → потом поза → потом фон.

4. Отдельная фишка — персонажи-гибриды. Например, кот Басик — это изначально «мальчик-кот с милой и необычной внешностью в стиле Pixar, картинка в тёмных тонах, он делает компьютерную игру».

Такие образы лучше запоминаются и гибче в сценариях. Минус — иногда поиск «того самого» занимает 2–3 часа: перебираешь кота, лисёнка, зайца, пока не найдёшь нужный характер.
5. Не перегружайте промт. Если сразу задать 5–6 мелких деталей («родинка», «надпись», «бабушка сзади», «тушит пожар»), модель распыляется и делает хуже. Лучше 1–2 ярких маркера и действие.
Ключевой приём: общий фон
Это суть всей схемы. Проблема большинства генераций в том, что «мальчик в магазине» и «кот в магазине» оказываются в двух разных магазинах: модель каждый раз дорисовывает фон заново. Чтобы сцены выглядели, как один комикс, нужно зафиксировать фон.
Делаем так:
1. Сначала рисуем сцену с первым героем: «Нарисуй Петю в магазине у холодильников, он радостно показывает веганские сосиски».
2. Потом к этой же картинке пишем: «убери мальчика с фото». Получаем тот же магазин, тот же свет, тот же ракурс — но пустой.

3. Теперь прикрепляем этот пустой фон, второго героя (Басика) и пишем: «Нарисуй, как кот сидит в тележке с недовольным лицом. Всё происходит у холодильников с предыдущей фотографии». Модель понимает, что фон задан, и не выдумывает свой.

За счёт этого оба кадра находятся в одном и том же месте. Именно это создаёт ощущение серии.
Как помогает Figma
Генерация изображений — это только половина работы. Вторая половина — композиция: как расположены персонажи, где находится текст, какой шрифт. Я использую Comic Sans, потому что он максимально читаемый и дружелюбный.
Все картинки из Krea AI я вытаскиваю в Figma. Она помогает быстро экспериментировать с вёрсткой, не запуская тяжёлые редакторы. Бесплатная, работает в браузере, можно двигать элементы, добавлять подписи, облачка, шрифты.
Посмотрите любой ролик «Figma за 15 минут» на YouTube, и вы уже можете собирать комиксы.
Пример: три сцены для курса
Покажу на конкретном примере, как это работает.
Сцена 1: магазин
Сюжет: Петя нашёл веганские сардельки и делится радостью с Басиком. Петя — радостный, Басик — токсичный.
Шаги:
Генерим Петю в магазине у холодильников.
Убираем Петю — получаем фон.
На этот фон сажаем Басика в тележку с недовольным видом.
Диалог в Figma:

Сцена 2: электричка
Сюжет: едут на дачу. Петя весь в рассаде и полон энтузиазма. Басик едет, потому что надо, решает кроссворд и недоволен.
Шаги:
Рисуем Басика в электричке, анфас, с кроссвордом, недовольного.
Просим: «убери кота» — получаем чистую электричку.
На этот фон ставим Петю: «нарисуй его в электричке, у него в руках много рассады, он воодушевлён».
Диалог:

Сцена 3: дача
Сюжет: Петя уже купается и зовёт кота. Кот на пределе терпения.
Шаги:
Рисуем Петю на русской даче, он в бассейне, радостный, лето.
Просим: «убери мальчика» — получаем фон дачи с бассейном.
Прикладываем фон, кота и пишем: «кот у бортика или на шезлонге, пьёт молоко из фужера, недоволен».
Диалог:

Что это даёт студентам
Я делаю комиксы не ради самих комиксов. Визуальное повествование — это инструмент вовлечения. Когда студент видит, что Петя и Басик снова спорят, то не просто читает очередной урок, а продолжает следить за историей.
Визуальная узнаваемость создаёт эмоциональный якорь. Персонажи становятся проводниками по материалу. Студент запоминает не абстрактную тему, а «урок, где Басик пил молоко на даче».
Она помогает структурировать курс в голове. Разные локации — это разные тематические блоки:
магазин — тема про экологию и выбор продуктов;
электричка — тема про планирование и цели;
дача — тема про отдых и баланс.
Студент видит персонажей в новой локации и понимает, что начинается новый раздел.
Наконец, это просто приятно. Онлайн-обучение часто ощущается, как рутина. Но когда курс похож на живой мир, где есть персонажи, юмор и что-то происходит, то учиться становится легче.
Я знаю сотни ребят, которые зашли к нам просто ради фана, «картинки пощёлкать». А в итоге влюбились в кодинг по уши. Теперь они проходят сложнейшие академические курсы, от которых раньше бы убежали в ужасе. Им нужно было просто разжечь искру, и мы это сделали. |
Выводы
Визуальная вселенная для курса — это способ сделать обучение более человечным, превратить набор уроков в историю, которую хочется пройти до конца.
Моя схема — Krea AI + Nano Banana + приём с общим фоном + Figma — позволяет создавать десятки иллюстраций быстро, дёшево и в одном стиле. Вместо 300–450 тысяч ₽ на иллюстратора я трачу несколько тысяч на нейросеть плюс пару часов на генерацию и сборку.
Но главное — не экономия: теперь у моего курса есть свой мир, и студенты это чувствуют.
