@ptbbastos: yes, but i needed to make the animation data for the material different on each object the material appears. I emailed Aligorith and got an answer. It seems there’s no easy way to migrate an animation_data block from material level to object, but it is possible:
Both of these have been possible from the start, though the default
setups don’t do this by default.
Basically, you’re going to need to:
- Get those F-Curves attached to those datablocks
- Add some extra parts to the ‘data_path’ for these F-Curves (*)
- Move (or probably copy) these over to the Object level
The extra parts you’ll need are as follows:
Materials: add to the start of the path
where MaterialName is whatever your material is called
Textures: add to the start of the path the stuff for Materials, followed by
where TexSlotName is the name of the relevant texture slot
ShapeKeys: add to the start of the path
To find out these sorts of paths:
- go to the Outliner -> Datablocks view.
- find the Object name (expand Objects)
- from there, search down until you find whatever property you were after
- click on empty space beside the name to highlight the row, then
KKEY to add that property to a KeyingSet.
- in Properties Editor, Scene Panels, find the “Keying Set Paths”
panel, and study the paths included there. You could also use these
paths to directly insert keyframes too if you like
I didn’t have much luck with this an noted in https://projects.blender.org/tracker/?func=detail&aid=23546&group_id=9&atid=498
…although that bug may just apply to shape key data
for the pythoners i could not get insert_keyframes(data_path) to work with deep data_paths, eg. data_path=material_slot.material.ambient etc.