From this question I learned about using frame_range to get start/end frames from actions.

Using it in a custom script I came across some behaviour that I can't explain, I have two actions, one with a single frame, the other with 8, outputting their frame_range results in:

Idle: <Vector (0.0000, 1.0000)>
Walk: <Vector (0.0000, 7.0000)>

The first range is exclusive and the second one is inclusive. All the docs say is


The final frame range of all F-Curves within this action Type: float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly)

I'm confused, how should I interpret the results of frame_range?

  • $\begingroup$ My guess is that Action.frame_range when used elsewhere needs a length, for fcurve modifiers the NLA., hence single frame actions are given the length of 1, by adding one to start frame as end frame, by default. $\endgroup$
    – batFINGER
    Commented Dec 26, 2017 at 5:54


You must log in to answer this question.

Browse other questions tagged .