diff options
author | Janne Karhu <jhkarh@gmail.com> | 2007-12-28 19:13:52 +0300 |
---|---|---|
committer | Janne Karhu <jhkarh@gmail.com> | 2007-12-28 19:13:52 +0300 |
commit | 64dd90af0b7abb62d3bf786a479061adf54c501b (patch) | |
tree | a3c849130d8f505e0b502a2dec4610dca02abca7 /source | |
parent | a85c1c8a65df75a0554aaf08228136033a078dcc (diff) |
- particle size changes weren't updated without a cache clear
- protecting the particle cache now actually protects the cache a bit better and not just prevent the clear button from working
- cache was being used for "none" physics.
- a bad tooltip for "reactor initial velocity"
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/blenkernel/intern/particle_system.c | 6 | ||||
-rw-r--r-- | source/blender/src/buttons_object.c | 8 |
2 files changed, 7 insertions, 7 deletions
diff --git a/source/blender/blenkernel/intern/particle_system.c b/source/blender/blenkernel/intern/particle_system.c index db571f01b1e..880fb0c1ef6 100644 --- a/source/blender/blenkernel/intern/particle_system.c +++ b/source/blender/blenkernel/intern/particle_system.c @@ -4381,10 +4381,10 @@ static void system_step(Object *ob, ParticleSystem *psys, ParticleSystemModifier return; } } - else { - if(psys->recalc) + else if(part->phystype != PART_PHYS_NO) { /* cache shouldn't be used for none physics */ + if(psys->recalc && (psys->flag & PSYS_PROTECT_CACHE) == 0) clear_particles_from_cache(ob,psys,(int)cfra); - else if(get_particles_from_cache(ob, psys, (int)cfra)){ + else if(get_particles_from_cache(ob, psys, (int)cfra)) { cached_step(ob,psmd,psys,cfra,vg_size); psys->cfra=cfra; psys->recalc = 0; diff --git a/source/blender/src/buttons_object.c b/source/blender/src/buttons_object.c index a65323b0606..d69f5232b37 100644 --- a/source/blender/src/buttons_object.c +++ b/source/blender/src/buttons_object.c @@ -3821,9 +3821,9 @@ static void object_panel_particle_extra(Object *ob) uiDefButI(block, NUM, B_PART_DISTR, "Seed:", butx,(buty-=buth),butw,buth, &psys->seed, 0.0, 255.0, 1, 0, "Set an offset in the random table"); - event=(part->flag&PART_SIZEMASS)?B_PART_RECALC:B_PART_REDRAW; - uiDefButF(block, NUM, event, "Size:", butx,(buty-=2*buth),butw,buth, &part->size, 0.01, 100, 10, 1, "The size of the particles"); - uiDefButF(block, NUM, event, "Rand:", butx,(buty-=buth),butw,buth, &part->randsize, 0.0, 2.0, 10, 1, "Give the particle size a random variation"); + /* size changes must create a recalc event always so that sizes are updated properly */ + uiDefButF(block, NUM, B_PART_RECALC, "Size:", butx,(buty-=2*buth),butw,buth, &part->size, 0.01, 100, 10, 1, "The size of the particles"); + uiDefButF(block, NUM, B_PART_RECALC, "Rand:", butx,(buty-=buth),butw,buth, &part->randsize, 0.0, 2.0, 10, 1, "Give the particle size a random variation"); uiDefButBitI(block, TOG, PART_SIZEMASS, B_PART_RECALC, "Mass from size", butx,(buty-=buth),butw,buth, &part->flag, 0, 0, 0, 0, "Multiply mass with particle size"); uiDefButF(block, NUM, B_PART_RECALC, "Mass:", butx,(buty-=buth),butw,buth, &part->mass, 0.01, 100, 10, 1, "Specify the mass of the particles"); @@ -4122,7 +4122,7 @@ static void object_panel_particle_physics(Object *ob) uiDefButF(block, NUM, B_PART_RECALC, "Random:", butx,(buty-=buth*4/5),butw,buth*4/5, &part->randfac, 0.0, 200.0, 1, 3, "Give the starting speed a random variation"); if(part->type==PART_REACTOR) { uiDefButF(block, NUM, B_PART_RECALC, "Particle:", butx,(buty-=buth*4/5),butw,buth*4/5, &part->partfac, -10.0, 10.0, 1, 3, "Let the target particle give the particle a starting speed"); - uiDefButF(block, NUM, B_PART_RECALC, "Reactor:", butx,(buty-=buth*4/5),butw,buth*4/5, &part->reactfac, -10.0, 10.0, 1, 3, "Let the vector from target particle give the particle a starting speed"); + uiDefButF(block, NUM, B_PART_RECALC, "Reactor:", butx,(buty-=buth*4/5),butw,buth*4/5, &part->reactfac, -10.0, 10.0, 1, 3, "Let the vector away from the target particles location give the particle a starting speed"); } else { uiDefButF(block, NUM, B_PART_RECALC, "Tan:", butx,(buty-=buth*4/5),butw,buth*4/5, &part->tanfac, -200.0, 200.0, 1, 3, "Let the surface tangent give the particle a starting speed"); |