Revision e0c7dcb by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 8, 2015, 10:43 (GMT) |
Merge branch 'master' into id-remap |
Revision 6188d17 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, missing-libs) October 8, 2015, 10:13 (GMT) |
Merge branch 'lib-link-rework-temp' into missing-libs |
Revision a219728 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, missing-libs) October 8, 2015, 10:13 (GMT) |
Merge branch 'free-refcount-ids' into missing-libs |
Revision 92bcc7d by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, missing-libs) October 8, 2015, 10:08 (GMT) |
Merge branch 'master' into missing-libs |
Revision 32d9f75 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, lib-link-rework-temp, missing-libs) October 8, 2015, 10:06 (GMT) |
Merge branch 'master' into lib-link-rework-temp |
Revision 249aa6c by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, free-refcount-ids, id-remap, missing-libs) October 8, 2015, 10:03 (GMT) |
Merge branch 'master' into free-refcount-ids |
Revision f2293df by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 7, 2015, 21:15 (GMT) |
Replace 'do_id_user' param of BKE_xxx_free() funcs by generic BKE_libblock_relink(). Heavily simplfies that freeing area, but again a rather risky and likely-to-break change. At least, NodeTree is known to be a trouble-maker here, due to how it seems to be 'owned' by its mat/tex/sce/etc. Have to dig deeper here, this is still quite unclear what exactly happens with those, and how to handle them correctly. |
Revision 1daa502 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 7, 2015, 19:56 (GMT) |
Add BKE_libblock_relink(), which works as _libblock_remap(), but only over one given ID (instead of whole Main content). Could replace maybe things like constraint, rigisbody world, etc. '_relink' func, but for now it's only intended to replace custom 'id releasing' code in _free() funcs of all IDs! |
Revision 06c6492 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 7, 2015, 19:10 (GMT) |
Avoid fexplicit conversion to ID * for remap parameters (use void pointers instead). Also found another missing ID in foreach_id (sound pointer of sequences). |
Revision 6ed0fcc by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 7, 2015, 18:56 (GMT) |
Merge branch 'master' into id-remap |
Revision dca705d by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 7, 2015, 18:32 (GMT) |
Huuuuuuuge commit - replace ugly scene/object/group_unlink by new generic libblock_unlink. Previous situation was pretty much horrible, a few data types having their own coocking to unlink, often doing more than only unlinking, often doing the same thing two times or more, often messing with areas they should not have touched (like editors from withing BKE)... Now we hope to have something generic, working the same way for all ID types (we do have to add some specific handling for groups/objects/scene unfortunately, but this remains reasonable). Needless to say such a change is calling for troubles - I tried to follow and reproduce as best as I could previous code, but most likely some areas will become buggy. Do not think previous code was 100% correct anyway, things like Objects have a really big and complicated usage of IDs... Also, foreach_id tool has been enhanced, again for complex types like objects & co, we should cover much better all possible IDs now (e.g. rigidbody & logic bricks were totally missing from there). And there is more to come... |
Revision ad8fa26 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 7, 2015, 08:31 (GMT) |
Adding game sensors/controllers/actuators to foreachid libquery. Those were totally missing, cannot see a good reason for it... Seems to work OK, but only very quickly tested code. |
Revision 34c608d by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 6, 2015, 12:47 (GMT) |
Make use of new IDWALK_REFCOUNTED flag in our ID remap code. Think core of the system is getting pretty much OK, now we'll likely have to deal with tons of specific cases, given how Blender is totally inconsistent when it comes to handling user counts (e.g. spaceimage...). Also, still have to make generic ID_unlink and ID_release_datablocks func to replace redundant code in BKE we have currently. |
Revision b8e2245 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 6, 2015, 10:25 (GMT) |
Merge branch 'missing-libs' into id-remap |
Revision f3e2e92 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 6, 2015, 10:25 (GMT) |
Merge branch 'lib-link-rework-temp' into id-remap |
Revision 64f0cd7 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 6, 2015, 10:25 (GMT) |
Merge branch 'free-refcount-ids' into id-remap |
Revision 7a7b5bc by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, missing-libs) October 6, 2015, 10:23 (GMT) |
Merge branch 'master' into missing-libs |
Revision 2a3e261 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap, lib-link-rework-temp, missing-libs) October 6, 2015, 10:20 (GMT) |
Merge branch 'master' into lib-link-rework-temp |
Revision 9139385 by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, free-refcount-ids, id-remap, missing-libs) October 6, 2015, 10:19 (GMT) |
Merge branch 'master' into free-refcount-ids |
Revision bb6da9c by Bastien Montagne (asset-engine, asset-engine--archived, asset-experiments, id-remap) October 5, 2015, 14:30 (GMT) |
ID foreach: add support for modifiers to indicate whether given ID pointer is refcounted or not. |
|