Fix T77683: Cycles baking crash with motion blur enabled and no camera

specified

Maniphest Tasks: T77683

Differential Revision: https://developer.blender.org/D8593
This commit is contained in:
Philipp Oeser 2020-08-17 14:20:37 +02:00
parent 1c892e6814
commit e157573fab
Notes: blender-bot 2023-10-04 09:42:55 +02:00
Referenced by issue #79915, Crash when changing the Color Surface to White Noise Texture
Referenced by issue #79533, Crash when opening file
Referenced by issue #77683, Crash when trying to bake texture
Referenced by issue #77348, Blender LTS: Maintenance Task 2.83
1 changed files with 8 additions and 4 deletions

View File

@ -458,15 +458,19 @@ void BlenderSync::sync_motion(BL::RenderSettings &b_render,
python_thread_state_restore(python_thread_state);
b_engine.frame_set(frame, subframe);
python_thread_state_save(python_thread_state);
sync_camera_motion(b_render, b_cam, width, height, 0.0f);
if (b_cam) {
sync_camera_motion(b_render, b_cam, width, height, 0.0f);
}
sync_objects(b_depsgraph, b_v3d, 0.0f);
}
/* Insert motion times from camera. Motion times from other objects
* have already been added in a sync_objects call. */
uint camera_motion_steps = object_motion_steps(b_cam, b_cam);
for (size_t step = 0; step < camera_motion_steps; step++) {
motion_times.insert(scene->camera->motion_time(step));
if (b_cam) {
uint camera_motion_steps = object_motion_steps(b_cam, b_cam);
for (size_t step = 0; step < camera_motion_steps; step++) {
motion_times.insert(scene->camera->motion_time(step));
}
}
/* note iteration over motion_times set happens in sorted order */