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:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2008-01-07 19:26:41 +0300
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2008-01-07 19:26:41 +0300
commitfe6c98a4d9a25fb66b1036ef3d15174af5eabe09 (patch)
tree9123359123018e252a19287a02eaaf7cc1f2f2f4 /source/blender/src/drawobject.c
parentadc68be1a87781112667005455e13f4f1514a7f2 (diff)
Particle object and group visualization now also work for hair, to
make for example feathers. Also made dupliparts work within groups. One issue still is that in particle editmode, the duplis can interfere with brushes and selection, though tweaking the dupli object position can alleviate the problem.
Diffstat (limited to 'source/blender/src/drawobject.c')
-rw-r--r--source/blender/src/drawobject.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/source/blender/src/drawobject.c b/source/blender/src/drawobject.c
index db2225f4823..2ae272cd5ba 100644
--- a/source/blender/src/drawobject.c
+++ b/source/blender/src/drawobject.c
@@ -3580,8 +3580,8 @@ static void draw_particle_edit(Object *ob, ParticleSystem *psys)
if(psys->childcache==0)
psys_cache_child_paths(ob, psys, CFRA, 0);
}
- else if(psys->childcache)
- free_child_path_cache(psys);
+ else if(!(pset->flag & PE_SHOW_CHILD) && psys->childcache)
+ free_child_path_cache(psys);
if((G.vd->flag & V3D_ZBUF_SELECT)==0)
glDisable(GL_DEPTH_TEST);
@@ -3625,13 +3625,14 @@ static void draw_particle_edit(Object *ob, ParticleSystem *psys)
}
glEnable(GL_LIGHTING);
+ if(psys->part->draw_as == PART_DRAW_PATH) {
+ for(i=0, path=psys->childcache; i<totchild; i++,path++){
+ glVertexPointer(3, GL_FLOAT, sizeof(ParticleCacheKey), (*path)->co);
+ glNormalPointer(GL_FLOAT, sizeof(ParticleCacheKey), (*path)->vel);
+ glColorPointer(3, GL_FLOAT, sizeof(ParticleCacheKey), (*path)->col);
- for(i=0, path=psys->childcache; i<totchild; i++,path++){
- glVertexPointer(3, GL_FLOAT, sizeof(ParticleCacheKey), (*path)->co);
- glNormalPointer(GL_FLOAT, sizeof(ParticleCacheKey), (*path)->vel);
- glColorPointer(3, GL_FLOAT, sizeof(ParticleCacheKey), (*path)->col);
-
- glDrawArrays(GL_LINE_STRIP, 0, (int)(*path)->steps + 1);
+ glDrawArrays(GL_LINE_STRIP, 0, (int)(*path)->steps + 1);
+ }
}
glDisable(GL_COLOR_MATERIAL);