diff options
author | Lukas Tönne <lukas.toenne@gmail.com> | 2015-05-06 15:02:29 +0300 |
---|---|---|
committer | Lukas Tönne <lukas.toenne@gmail.com> | 2015-05-06 15:02:29 +0300 |
commit | ebcb8223bd886fd327cddae1394436e10f1f7a73 (patch) | |
tree | ab6f36d914d0144d56c9e461d1c68b8a6c3b7dce /source/blender/editors/space_view3d/drawobject.c | |
parent | b97214a0ba1615f5a699150736ae3e99986707f4 (diff) | |
parent | af7fe835ffeff094df994f5e3fd75735f0514d8f (diff) |
Merge branch 'alembic' into gooseberry
Conflicts:
source/blender/blenkernel/BKE_key.h
source/blender/blenkernel/intern/customdata.c
source/blender/blenkernel/intern/key.c
source/blender/editors/object/object_shapekey.c
source/blender/makesdna/DNA_customdata_types.h
source/blender/makesrna/intern/rna_key.c
Diffstat (limited to 'source/blender/editors/space_view3d/drawobject.c')
-rw-r--r-- | source/blender/editors/space_view3d/drawobject.c | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/source/blender/editors/space_view3d/drawobject.c b/source/blender/editors/space_view3d/drawobject.c index 32a3bf21515..6d04c39e36c 100644 --- a/source/blender/editors/space_view3d/drawobject.c +++ b/source/blender/editors/space_view3d/drawobject.c @@ -60,6 +60,7 @@ #include "BKE_DerivedMesh.h" #include "BKE_deform.h" #include "BKE_displist.h" +#include "BKE_editstrands.h" #include "BKE_font.h" #include "BKE_global.h" #include "BKE_image.h" @@ -3938,7 +3939,7 @@ static void draw_em_fancy(Scene *scene, ARegion *ar, View3D *v3d, static void draw_mesh_object_outline(View3D *v3d, Object *ob, DerivedMesh *dm) { if ((v3d->transp == false) && /* not when we draw the transparent pass */ - (ob->mode & OB_MODE_ALL_PAINT) == false) /* not when painting (its distracting) - campbell */ + (ob->mode & OB_MODE_ALL_BRUSH) == false) /* not when painting (its distracting) - campbell */ { glLineWidth(UI_GetThemeValuef(TH_OUTLINE_WIDTH) * 2.0f); glDepthMask(0); @@ -8409,14 +8410,16 @@ void draw_object(Scene *scene, ARegion *ar, View3D *v3d, Base *base, const short view3d_cached_text_draw_begin(); for (psys = ob->particlesystem.first; psys; psys = psys->next) { - /* run this so that possible child particles get cached */ - if (ob->mode & OB_MODE_PARTICLE_EDIT && is_obact) { - PTCacheEdit *edit = PE_create_current(scene, ob); - if (edit && edit->psys == psys) - draw_update_ptcache_edit(scene, ob, edit); + if (!(ob->mode & OB_MODE_HAIR_EDIT)) { + /* run this so that possible child particles get cached */ + if (ob->mode & OB_MODE_PARTICLE_EDIT && is_obact) { + PTCacheEdit *edit = PE_create_current(scene, ob); + if (edit && edit->psys == psys) + draw_update_ptcache_edit(scene, ob, edit); + } + + draw_new_particle_system(scene, v3d, rv3d, base, psys, dt, dflag); } - - draw_new_particle_system(scene, v3d, rv3d, base, psys, dt, dflag); } invert_m4_m4(ob->imat, ob->obmat); view3d_cached_text_draw_end(v3d, ar, 0, NULL); @@ -8441,6 +8444,13 @@ void draw_object(Scene *scene, ARegion *ar, View3D *v3d, Base *base, const short glMultMatrixf(ob->obmat); } } + + if (ob->mode & OB_MODE_HAIR_EDIT && is_obact) { + BMEditStrands *edit = BKE_editstrands_from_object(ob); + if (edit) { + draw_strands_edit_hair(scene, v3d, ar, edit); + } + } } /* draw code for smoke */ @@ -8643,7 +8653,7 @@ void draw_object(Scene *scene, ARegion *ar, View3D *v3d, Base *base, const short } /* object centers, need to be drawn in viewmat space for speed, but OK for picking select */ - if (!is_obact || !(ob->mode & OB_MODE_ALL_PAINT)) { + if (!is_obact || !(ob->mode & OB_MODE_ALL_BRUSH)) { int do_draw_center = -1; /* defines below are zero or positive... */ if (render_override) { |