diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-12-18 15:07:33 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-12-18 15:08:17 +0300 |
commit | 77d9ddc5ea6b9c9c18699671ea5e7c37ee31d623 (patch) | |
tree | c3ca6b37465fac2d42fcf5e67ce42308ae6c7e69 | |
parent | 604f5cf3f41e88adcbededb93d7e1ae83a40635a (diff) |
Armature: temp workaround for crash caused by custom bone drawing
-rw-r--r-- | source/blender/draw/intern/draw_armature.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/draw/intern/draw_armature.c b/source/blender/draw/intern/draw_armature.c index b8b53fbbb78..3837daadd02 100644 --- a/source/blender/draw/intern/draw_armature.c +++ b/source/blender/draw/intern/draw_armature.c @@ -318,6 +318,8 @@ static void drw_shgroup_bone_envelope( /* Custom (geometry) */ +extern void drw_batch_cache_generate_requested(Object *custom); + static void drw_shgroup_bone_custom_solid( const float (*bone_mat)[4], const float bone_color[4], const float hint_color[4], const float outline_color[4], @@ -329,6 +331,9 @@ static void drw_shgroup_bone_custom_solid( struct GPUBatch *ledges = DRW_cache_object_loose_edges_get(custom); float final_bonemat[4][4]; + /* XXXXXXX needs to be moved elsewhere. */ + drw_batch_cache_generate_requested(custom); + if (surf || edges || ledges) { mul_m4_m4m4(final_bonemat, g_data.ob->obmat, bone_mat); } |