Revision e29c546 by Sergey Sharybin July 19, 2017, 14:26 (GMT) |
Depsgraph: Fix strict compiler error with copy on write disabled |
Revision 53c1d15 by Sergey Sharybin July 19, 2017, 14:21 (GMT) |
Depsgraph: Fix particle system freeing accessing freed particle settings Need to ensure CoW IDs are freed in the right order. |
Revision 496d186 by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Fix heap use after free when freeing scene with compositor This is the fake ID nature of compositor again. Need to discard such pointers before freeing datablock even for scenes (before it was done for objects only). |
Revision 6bb7a4c by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Fix assert failure on Cycles render Was happening when there was material in bmain but not used by any object. |
Revision 17dcdbc by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Fix remapping of node trees when they reference self material |
Revision e49aa6b by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Add missing expansion od custom bone shapes |
Revision 5d9a1b4 by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Fix wrong ID remapping when armature object is constructed prior to it's targets Previously it was possible to run into situation when armature is constructed prior to objects which are used for it's constraints. This was causing wrong scene evaluation. Now we create placeholders for objects used by armature in case they don't have ID node yet, which ensures we have proper mapping from original to copy-on-write ID pointer. |
Revision a532fe5 by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Ensure scene camera object is always built |
Revision b2ca2bb by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Add code which helps catching cases when requested ID node is not ready yet This shows the bug when IK solver doesn't update reliably when targeted an external object and when that object is handled by build_object() after the armature. |
Revision 49e4961 by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
ID: Add run-time flag indicating that ID is coming from copy-on-write |
Revision 44c6d45 by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Fix compilation error in previous commit |
Revision c2ffea7 by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Remove hacky workaround for copy-on-write tagging flushing updates to everything Wasn't working reliably,m and it's somewhat dangerous anyway. Seed something smarter. |
Revision 3212e72 by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Fix crash opening file with IK solver with copy on write enabled The issue was caused by id_copy_no_main() changing pointers of constraints used in pose to a newly allocated ID. This is correct, but caused confusion too our copy on write remapping, because we are mimicing inplace duplication by copying memory over from a temporarily duplicated ID to a proper placeholder. This was causing dangling pointers in pose to a temporarily allocated ID. Now we add special code to remapping callback which replaces temporary ID with a proper one. |
Revision ac136ba by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Restore ID datablock tag when Object is tagged with OB_RECALC_DATA Was lost in one of the previous commits. |
Revision 3efde4a by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Restore workaround for CoW objects not being fully expanded |
Revision 17cd9f8 by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Prevent wrong particles state when canceling playback |
Revision c3f64ea by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Fixes to make particle system behave more correct Couple of main things here: - Properly handle PSYS_UPDATE_* flags from DEG_id_tag_update. There are still some possible issues here related on the fact that we don't differentiate different PSYS_UPDATE_* flags here and handle the mall the same. Other possibility here is that object level particle settings evaluation might be forced when particle system evaluation is tagged for update. Didn't see actual issue here yet, but need a closer look. - Don't tag non-object datablocks on visibility changes. Those don't depend on visibility anyway. This prevents particle settings IDs from flushing updates to all objects, causing all cached particles to be lsot. - Only update translation and geometry components on visibility changes. Once again, this prevents particle cache from being invalidated. We might need to tag material components here still tho. |
Revision a31233f by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Stop tagging all IDs for update on depsgraph rebuild This code needs to be changed. For the time being CoW might become less stable, but need to stop doing such tag for other work. |
Revision 414cc82 by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Initial implementation of more granular tagging This commit makes it so that only ID components which correspond to the tag flag are tagged for update (previously the whole ID would have been updated in the most of cases). This allows us to have more granular tag flags and prevent tagging of things we don't want to be tagged. |
Revision 50f5f09 by Sergey Sharybin July 19, 2017, 13:20 (GMT) |
Depsgraph: Cleanup, de-duplicate couple of utility functions |
|
|
|


Master Commits
MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021