Blender Git Commit Log

Git Commits -> Revision 00d4769

Revision 00d4769 by Sergey Sharybin (master)
July 7, 2017, 10:08 (GMT)
Fix T50973: Directional blur node doesn't clamp value if using driver

The issue was caused by combination of following factors:

- Blender Internal viewport render can not distinguish between which parts of
main database changed, so it does full database re-sync when anything is
tagged for an update.

This way, if any NodeTree (including compositor) is changed, Blender Internal
viewport is tagged for full render database update.

- With old dependency graph, scene-level drivers are evaluated on every
iteration of scene_update_tagged, even if nothing is tagged for an update.

This causes compositor drivers be evaluated quite often.

- Driver evaluation checks whether value was changed, and if so it tags
corresponding ID type as updated (this is what was telling viewport to do
render database update).

This check was quite stupid: current property value was checked against the
one coming from driver expression. This means, if driver value is outside
of the hard limit range of the property, the property will always be
considered updated.

The fix is to compare current property value against clamped value from the
driver.

Commit Details:

Full Hash: 00d476976e88052e8410916fca1d86d5f12529ca
Parent Commit: fee7f68
Lines Changed: +8, -5

1 Modified Path:

/source/blender/blenkernel/intern/anim_sys.c (+8, -5) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021