diff options
author | Campbell Barton <ideasman42@gmail.com> | 2019-12-23 09:28:15 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2019-12-23 09:28:15 +0300 |
commit | b888711e50e428c9b1d1744d2775fd4d95ddcb1e (patch) | |
tree | 8be241cbd2d03258d5fc643af7b524a50e913d0e /source/blender/blenkernel/intern/scene.c | |
parent | 6aa82d16868c4b790a22cc1c67eecd94ff54ae11 (diff) |
Fix T72443: Support time remapping for camera-markers
Diffstat (limited to 'source/blender/blenkernel/intern/scene.c')
-rw-r--r-- | source/blender/blenkernel/intern/scene.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c index ab72b7d3b0d..f84ef92d074 100644 --- a/source/blender/blenkernel/intern/scene.c +++ b/source/blender/blenkernel/intern/scene.c @@ -982,14 +982,16 @@ Object *BKE_scene_camera_switch_find(Scene *scene) return NULL; } - TimeMarker *m; - int cfra = scene->r.cfra; + const int cfra = ((scene->r.images == scene->r.framapto) ? + scene->r.cfra : + (int)(scene->r.cfra * + ((float)scene->r.framapto / (float)scene->r.images))); int frame = -(MAXFRAME + 1); int min_frame = MAXFRAME + 1; Object *camera = NULL; Object *first_camera = NULL; - for (m = scene->markers.first; m; m = m->next) { + for (TimeMarker *m = scene->markers.first; m; m = m->next) { if (m->camera && (m->camera->restrictflag & OB_RESTRICT_RENDER) == 0) { if ((m->frame <= cfra) && (m->frame > frame)) { camera = m->camera; |