CSV Animate

csv_animate is a Python script for importing CSV files into Blender and saving the data to Blender Ipo objects. This allows you to use external programs to generate motion data for driving animations in Blender.

A CSV file is a Comma-Separated Values file, as can be saved by, for example, Microsoft Excel. It is a plain text file, with columns of numbers separated by commas.

csv_animate requires the CSV file to include a header on the first line, which is simply a list of column names, separated by commas. The names must be valid Python variable names (no spaces or funny characters, and no quotes) since they are used by the script to access the columns by name rather than by number.

The file csv_animate.py is intended to be generic and actually contains several functions that are to be called from another script created by the user. That script manages the details specific to their application, namely, which columns get mapped to which Ipo curves of which objects. Look at the demo, csv_demo.py, for an example that you can use as a starting point.


This script will not work with just the basic Blender install.
Also Python 2.3 or later is required for its csv file reader.
Download Python here. I used the default install options on Windows.

To use csv_animate with Blender 2.37, you'll need to edit the function new_object_ipo and change the "if ipo:" clause by moving the triple-quote to comment out the existing code and un-comment the 2.37 code.


The csv_animate script is bundled with a small demonstration that shows how to call csv_animate. The demonstration contains:

csv_animate.py has comments describing how to use it, but it is probably easier to start by looking at what csv_demo.py does.

To run the demo, open csv_demo.py in a text editor or in Blender to view the comments and follow the instructions.

csv_demo.zip (~48K)
csv_demo.tgz (~44K)

The demo will create a short animation that should look like this:
demo.avi (~392K)
frame of demo animation


Contact Me

Updated: 2006.01.22