[Bf-blender-cvs] [cafb1bc47f6] master: Data-block Preview: Create preview using current frame

Antonio Vazquez noreply at git.blender.org
Thu Jul 29 15:13:23 CEST 2021


Commit: cafb1bc47f69cee8cd598f8c375f630f8fbdf4d9
Author: Antonio  Vazquez
Date:   Thu Jul 29 15:07:25 2021 +0200
Branches: master
https://developer.blender.org/rBcafb1bc47f69cee8cd598f8c375f630f8fbdf4d9

Data-block Preview: Create preview using current frame

The preview was always using frame 1, but maybe the object has changed and it's better create preview using the current frame.

Reviewed By: Severin

Differential Revision: https://developer.blender.org/D12018

===================================================================

M	source/blender/editors/render/render_preview.c

===================================================================

diff --git a/source/blender/editors/render/render_preview.c b/source/blender/editors/render/render_preview.c
index 702c8d052c5..fe1e850dcba 100644
--- a/source/blender/editors/render/render_preview.c
+++ b/source/blender/editors/render/render_preview.c
@@ -727,6 +727,8 @@ struct ObjectPreviewData {
   /* Copy of the object to create the preview for. The copy is for thread safety (and to insert
    * it into an own main). */
   Object *object;
+  /* Current frame. */
+  int cfra;
   int sizex;
   int sizey;
 };
@@ -760,6 +762,10 @@ static Scene *object_preview_scene_create(const struct ObjectPreviewData *previe
                                           Depsgraph **r_depsgraph)
 {
   Scene *scene = BKE_scene_add(preview_data->pr_main, "Object preview scene");
+  /* Preview need to be in the current frame to get a thumbnail similar of what
+   * viewport displays. */
+  CFRA = preview_data->cfra;
+
   ViewLayer *view_layer = scene->view_layers.first;
   Depsgraph *depsgraph = DEG_graph_new(
       preview_data->pr_main, scene, view_layer, DAG_EVAL_VIEWPORT);
@@ -804,6 +810,7 @@ static void object_preview_render(IconPreview *preview, IconPreviewSize *preview
       .pr_main = preview_main,
       /* Act on a copy. */
       .object = (Object *)preview->id_copy,
+      .cfra = preview->scene->r.cfra,
       .sizex = preview_sized->sizex,
       .sizey = preview_sized->sizey,
   };



More information about the Bf-blender-cvs mailing list