12
$\begingroup$

How can I add keyframes to custom properties with python? Usually, I can use the function

object.keyframe_insert(data_path="location")

but I couldn't find the right data_path of a custom property.

$\endgroup$
  • $\begingroup$ Thanks ideasman42, it works perfectly. Never used StackExchenge and it is difficult for me to not at least thank you for your efficient help. But I didn't found where is the best place to put this thanks... $\endgroup$ – Salvatore Oct 11 '13 at 13:16
  • 1
    $\begingroup$ You can thank ideasman42 by accepting the answer. Just click the 'v' and it turns green :) $\endgroup$ – jasperge Feb 19 '14 at 0:13
  • $\begingroup$ you are right, it's done. $\endgroup$ – Salvatore Feb 20 '14 at 20:17
11
$\begingroup$

Keyframes on custom properties use Python's getitem/setitem syntax rather then getattr/setattr.

This matches python api, where you would access object.location as an attribute and object["prop"] for a custom property.

So you would need to write it like this:

object.keyframe_insert(data_path='["prop"]')

Note that you have to use " quotes, not ',
'["prop"]' can be written as "[\"prop\"]" too of course.

I think we have this documented, I'll have to double check though.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.