Animación vectorial · Python · GPU
Anima ideas con código
Gaanim describe escenas en Python, las muestra en vivo mientras escribes y las renderiza con trazos vectoriales en la GPU, listas para exportar a video.
Descargar para Windowsx64 · .zip Primera animación → Tutorial Probar en el navegador Reproducir un .gaanim
Busca por nombre o por tarea, en español o en inglés. Atajo: Ctrl K o /
Escenas en PythonUna API fluida: setters inmediatos para el estado y
.animate para describir el tiempo.Vectores en la GPUVello sobre Bevy: trazos nítidos a cualquier resolución y vista previa con recarga al guardar.
Texto y matemáticasTipografía y ecuaciones con Typst, animables glifo a glifo con
write.Exporta a videoMP4, WebM con transparencia, WebP, GIF y secuencias PNG desde la misma escena.
Empieza en tres pasos
1Instala y crea un proyectoDescarga el ejecutable
gaanim y crea un proyecto con gaanim init video mi-video. Ver instalación.2Escribe la escenaEdita
main.py: crea objetos con scene.geometry y descríbelos en el tiempo con .animate y scene.play.3Previsualiza y exporta
gaanim . abre la vista previa con recarga al guardar; gaanim export . --output video.mp4 genera el archivo final.Tu primera escena
La escena mide 16 × 9 unidades lógicas con el origen en el centro. Cada animación se describe con .animate y se programa con scene.play:
from gaanim import BLUE, GOLD, WHITE, Easing, Scene
scene = Scene(frame=(16, 9), background="#0f172a")
title = scene.text("Hola, Gaanim", role="title").fill(WHITE).move_to(0, 3)
circle = scene.geometry.circle(1.2).fill(BLUE).move_to(-3, -0.5)
arrow = scene.geometry.arrow(-1.4, -0.5, 1.4, -0.5).fill(GOLD).stroke(GOLD, 0.02)
square = scene.geometry.rect(2.4, 2.4).fill(GOLD).move_to(3, -0.5)
scene.play([title.animate.write().duration(1.0)])
scene.play([
circle.animate.create().duration(1.0),
arrow.animate.create().duration(1.0),
square.animate.grow_from_center().duration(1.0).easing(Easing.SMOOTH),
])
scene.play([circle.animate.shift_by(0, 1).duration(0.6)])
scene.render()