From cdf0d95a50e6ea5592e65242c3c8ffbdfd4629a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Tue, 2 Jun 2020 16:33:35 +0200 Subject: Fix T77126: Documented frame_change_pre and frame_change_post handlers The documentation for the `frame_change_pre` and `frame_change_post` handlers was really sparse, and suggested that `frame_change_pre` is called before the frame changes. This is not the case; it's called after the frame has changed, but before the dependency graph has been updated for it. No functional changes, just updated documentation. Differential Revision: https://developer.blender.org/D7905 Reviewed by: sergey --- source/blender/python/intern/bpy_app_handlers.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/source/blender/python/intern/bpy_app_handlers.c b/source/blender/python/intern/bpy_app_handlers.c index 28498e116df..dde1d13477f 100644 --- a/source/blender/python/intern/bpy_app_handlers.c +++ b/source/blender/python/intern/bpy_app_handlers.c @@ -44,8 +44,16 @@ void bpy_app_generic_callback(struct Main *main, static PyTypeObject BlenderAppCbType; static PyStructSequence_Field app_cb_info_fields[] = { - {"frame_change_pre", "on frame change for playback and rendering (before)"}, - {"frame_change_post", "on frame change for playback and rendering (after)"}, + {"frame_change_pre", + "Called after frame change for playback and rendering, before any data is evaluated for the " + "new frame. This makes it possible to change data and relations (for example swap an object " + "to another mesh) for the new frame. Note that this handler is **not** to be used as 'before " + "the frame changes' event. The dependency graph is not available in this handler, as data " + "and relations may have been altered and the dependency graph has not yet been updated for " + "that."}, + {"frame_change_post", + "Called after frame change for playback and rendering, after the data has been evaluated " + "for the new frame."}, {"render_pre", "on render (before)"}, {"render_post", "on render (after)"}, {"render_write", "on writing a render frame (directly after the frame is written)"}, -- cgit v1.2.3