Есть ли простой способ сделать и сохранить анимацию с Pygame?

Я сделал очень простой фрактальный генератор, который печатает каждый шаг; Я хочу привести его в презентацию, которую я сделал. Очевидно, что инструмент, с которым я делаю презентацию, не поддерживает pygame, есть ли способ сохранить его как видео? Предпочтительно, как анимированный .gif или тому подобное.

Ответ 1

Не напрямую. Но вы можете сохранить скринкаст вашей программы с помощью одной из многих доступных утилит, которые это делают.

Я не знаю о Windows или OSX, но если вы работаете на Ubuntu или другом настольном компьютере на основе gnome, вы можете использовать встроенную функциональность gnome-shell (стандартный keybinding - Control+Shift+Alt+R) или istanbul ( подробнее здесь).

Googling screencast <your-os-here> должен помочь, если вы не используете Ubuntu.

РЕДАКТИРОВАТЬ:. Вы сохранили видео, которое вы можете легко преобразовать в формат - если хотите - с другими утилитами. Здесь описывается, как преобразовать из ogv (стандартный вывод для linux screencasting) в анимированный gif.

Ответ 2

http://visvis.googlecode.com/hg/vvmovie/images2gif.py - пакет python для создания анимированных gif.

Я использовал его недавно в первый раз (в сочетании с pygame), так что это не гарантировано, это лучшие практики, но он действительно сработал. Здесь код, вот результат

-

ОБНОВЛЕНИЕ: со временем я решил, что image2gif.py является посредственным (создает ненужные большие файлы) и ненадежным (иногда случайно не удается загрузить и запустить). Моим новым предпочтением является вызов imagemagick с использованием подпроцесса. Пример кода здесь. Вот более короткий пример в Windows (из комментариев).