Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSybren A. Stüvel <sybren@blender.org>2021-02-26 14:44:08 +0300
committerSybren A. Stüvel <sybren@blender.org>2021-02-26 14:44:08 +0300
commit17534e28ff44cf3d002e9ca198fd83909814c0f7 (patch)
tree42bcdda833399cc6098ce904641ec4ad515b5862 /source/blender/editors/interface/interface_icons.c
parente1a541c689b21e4aa759bb497dbcfc45b8220637 (diff)
Assets: Preview rendering for Action datablocks
Render previews for Action datablocks by rendering the scene camera with the Workbench (solid) engine. The //look// can be configured by setting the scene's render engine to Workbench and editing the scene's shading properties. It is assumed that the pose has already been applied and that the scene camera is capturing the pose. In other words, the render function just renders from the scene camera without evaluating/applying the Action stored in `preview->id`. The ID is only used to determine its type and to store the resulting preview. Not all code paths that lead to the `action_preview_render()` function actually provide a depsgraph. The "Refresh Asset Preview" button (`ED_OT_lib_id_generate_preview`) does, but `WM_OT_previews_ensure` does not. Reviewed By: Severin Differential Revision: https://developer.blender.org/D10543
Diffstat (limited to 'source/blender/editors/interface/interface_icons.c')
-rw-r--r--source/blender/editors/interface/interface_icons.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/source/blender/editors/interface/interface_icons.c b/source/blender/editors/interface/interface_icons.c
index 1739035f92c..c16c3d2c49a 100644
--- a/source/blender/editors/interface/interface_icons.c
+++ b/source/blender/editors/interface/interface_icons.c
@@ -1426,8 +1426,13 @@ static void icon_set_image(const bContext *C,
scene = CTX_data_scene(C);
}
/* Immediate version */
- ED_preview_icon_render(
- CTX_data_main(C), scene, id, prv_img->rect[size], prv_img->w[size], prv_img->h[size]);
+ ED_preview_icon_render(CTX_data_main(C),
+ CTX_data_ensure_evaluated_depsgraph(C),
+ scene,
+ id,
+ prv_img->rect[size],
+ prv_img->w[size],
+ prv_img->h[size]);
}
}