Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Activity Forums Adobe After Effects CSV data-driven animation of position and time

  • CSV data-driven animation of position and time

    Posted by Diana Marques on March 31, 2021 at 4:43 am

    I have a .csv file with multiple occurrences (rows) and to each occurrence there is an xyz coordinate and a timestamp (four columns); the time unit is frames (set at 30 fps). As in this sample but extending for thousands of rows:

    x,y,z,time

    0.85,-7.73,-0.36,0
    0.85,-7.73,-0.36,1
    2.61,-0.11,1.15,0
    3.33,7.01,5.24,0
    -4.12,2.41,0.89,0

    In After Effects I would like to have a circle show briefly for each occurrence (think many blinking lights), at the `position and time determined by the data. I’m imagining a circle shape layer showing for a duration of 2 frames, at each position, at the corresponding starting frame indicated by the fourth column.

    I am having trouble writing the expression to encode this. I’ve looked for examples of expressions where data determines position and time, but unsuccessfully so far. If you have any ideas or examples you know of I would very much appreciate, thank you.

    Diana Marques replied 5 years, 1 month ago 2 Members · 2 Replies
  • 2 Replies
  • Walter Soyka

    April 5, 2021 at 8:59 pm

    This is not super-straightforward to do in Ae, because you can’t just “draw” each circle — you actually need to have a layer (or a set of many shape objects within a layer) already set to respond to the data.

    The way I would probably approach this is to reformat the data so it better matches Ae’s model. Consider each row in the spreadsheet to be a single dot, each column to be a single frame (so column A is frame 0, column B is frame 1, etc.), then store the position [x,y,z] in each cell.

    Once you’ve done that, you can import the CSV into Ae, build out layers for the maximum number of dots you’ll have on-screen, and use expressions to get the position for each dot from its corresponding record.

  • Diana Marques

    April 18, 2021 at 3:28 pm

    Walter, thank you! I apologize for the delay, I didn’t realize I had a reply to this inquiry (and I failed to click on the checkbox to be notified over email).

    Yes, what you describe is what I’m about to experiment. I’ll start with a small number of shape layers and have the corresponding number of rows in the CSV. Each row will inform each shape layer about where to be (x,y,z) and what frame to be on. It’s writing the expression that I’m getting hung up on—but I’ll persist!

    Thank you again, I appreciate it.

We use anonymous cookies to give you the best experience we can.
Our Privacy policy | GDPR Policy