From d5d354b1a234bcb04205c13cf2ae8a9519231f5b Mon Sep 17 00:00:00 2001 From: Antonioya Date: Sun, 9 Sep 2018 11:41:25 +0200 Subject: GP: Fix scale problem when object is parented The stroke was not scaled as expected in child objects. --- source/blender/draw/engines/gpencil/gpencil_draw_utils.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/blender/draw/engines/gpencil/gpencil_draw_utils.c b/source/blender/draw/engines/gpencil/gpencil_draw_utils.c index 853f79d5a6e..73a621a5f0f 100644 --- a/source/blender/draw/engines/gpencil/gpencil_draw_utils.c +++ b/source/blender/draw/engines/gpencil/gpencil_draw_utils.c @@ -387,7 +387,7 @@ DRWShadingGroup *DRW_gpencil_shgroup_stroke_create( /* object scale and depth */ if ((ob) && (id > -1)) { - stl->shgroups[id].obj_scale = (ob->size[0] + ob->size[1] + ob->size[2]) / 3.0f; + stl->shgroups[id].obj_scale = mat4_to_scale(ob->obmat); DRW_shgroup_uniform_float(grp, "objscale", &stl->shgroups[id].obj_scale, 1); stl->shgroups[id].keep_size = (int)((gpd) && (gpd->flag & GP_DATA_STROKE_KEEPTHICKNESS)); DRW_shgroup_uniform_int(grp, "keep_size", &stl->shgroups[id].keep_size, 1); @@ -477,7 +477,7 @@ static DRWShadingGroup *DRW_gpencil_shgroup_point_create( /* object scale and depth */ if ((ob) && (id > -1)) { - stl->shgroups[id].obj_scale = (ob->size[0] + ob->size[1] + ob->size[2]) / 3.0f; + stl->shgroups[id].obj_scale = mat4_to_scale(ob->obmat);; DRW_shgroup_uniform_float(grp, "objscale", &stl->shgroups[id].obj_scale, 1); stl->shgroups[id].keep_size = (int)((gpd) && (gpd->flag & GP_DATA_STROKE_KEEPTHICKNESS)); DRW_shgroup_uniform_int(grp, "keep_size", &stl->shgroups[id].keep_size, 1); -- cgit v1.2.3