[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [21904] branches/blender2.5/blender/source /blender: 2.5:
Brecht Van Lommel
brecht at blender.org
Sun Jul 26 00:20:29 CEST 2009
Revision: 21904
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=21904
Author: blendix
Date: 2009-07-26 00:20:26 +0200 (Sun, 26 Jul 2009)
Log Message:
-----------
2.5:
* Fix crash entering particle mode, and particles not showing.
Janne, please check the changes I made in psys_cache_paths,
I'm not confident they are correct.
* Fix some warnings
Modified Paths:
--------------
branches/blender2.5/blender/source/blender/blenkernel/intern/boids.c
branches/blender2.5/blender/source/blender/blenkernel/intern/particle.c
branches/blender2.5/blender/source/blender/blenkernel/intern/particle_system.c
branches/blender2.5/blender/source/blender/blenlib/BLI_kdtree.h
branches/blender2.5/blender/source/blender/editors/space_view3d/space_view3d.c
Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/boids.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/boids.c 2009-07-25 21:33:43 UTC (rev 21903)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/boids.c 2009-07-25 22:20:26 UTC (rev 21904)
@@ -399,7 +399,7 @@
KDTreeNearest ptn[11];
float vec[3] = {0.0f, 0.0f, 0.0f}, loc[3] = {0.0f, 0.0f, 0.0f};
int neighbors = BLI_kdtree_find_n_nearest(bbd->psys->tree, 11, pa->state.co, pa->prev_state.ave, ptn);
- int n, nearest = 1;
+ int n;
int ret = 0;
if(neighbors > 1) {
@@ -898,8 +898,6 @@
/* determines the velocity the boid wants to have */
void boid_brain(BoidBrainData *bbd, int p, ParticleData *pa)
{
- ParticleData *pars=bbd->psys->particles;
- ParticleEffectorCache *ec=0;
BoidRule *rule;
BoidSettings *boids = bbd->part->boids;
BoidValues val;
@@ -1259,7 +1257,6 @@
}
case eBoidMode_Falling:
{
- float zvec[3] = {0.0f,0.0f,1.0f};
float grav[3] = {0.0f, 0.0f, bbd->part->acc[2] < 0.0f ? -1.0f : 0.0f};
/* gather apparent gravity to r_ve */
@@ -1523,4 +1520,5 @@
}
return state;
-}
\ No newline at end of file
+}
+
Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/particle.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/particle.c 2009-07-25 21:33:43 UTC (rev 21903)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/particle.c 2009-07-25 22:20:26 UTC (rev 21904)
@@ -2568,8 +2568,7 @@
ParticleSettings *part = psys->part;
ParticleData *pa;
- ParticleKey result, *kkey[2] = {NULL, NULL};
- HairKey *hkey[2] = {NULL, NULL};
+ ParticleKey result;
ParticleEdit *edit = 0;
ParticleEditKey *ekey = 0;
@@ -2709,6 +2708,10 @@
dietime = birthtime + pa_length * (dietime - birthtime);
}
+ else
+ /* XXX brecht: don't know if this code from 2.4 is correct
+ * still, but makes hair appear again in particle mode */
+ dietime= pind.hkey[0][pa->totkey-1].time;
/*--interpolate actual path from data points--*/
for(k=0, ca=cache[i]; k<=steps; k++, ca++){
@@ -2731,14 +2734,14 @@
if(edit){
if(pset->brushtype==PE_BRUSH_WEIGHT){
if(k==steps)
- VecLerpf(ca->col, nosel_col, sel_col, hkey[0]->weight);
+ VecLerpf(ca->col, nosel_col, sel_col, pind.hkey[0]->weight);
else
VecLerpf(ca->col, nosel_col, sel_col,
- (1.0f - keytime) * hkey[0]->weight + keytime * hkey[1]->weight);
+ (1.0f - keytime) * pind.hkey[0]->weight + keytime * pind.hkey[1]->weight);
}
else{
- if((ekey + (hkey[0] - pa->hair))->flag & PEK_SELECT){
- if((ekey + (hkey[1] - pa->hair))->flag & PEK_SELECT){
+ if((ekey + (pind.hkey[0] - pa->hair))->flag & PEK_SELECT){
+ if((ekey + (pind.hkey[1] - pa->hair))->flag & PEK_SELECT){
VECCOPY(ca->col, sel_col);
}
else{
@@ -2746,7 +2749,7 @@
}
}
else{
- if((ekey + (hkey[1] - pa->hair))->flag & PEK_SELECT){
+ if((ekey + (pind.hkey[1] - pa->hair))->flag & PEK_SELECT){
VecLerpf(ca->col, nosel_col, sel_col, keytime);
}
else{
@@ -3627,8 +3630,6 @@
ParticleData *pa;
ChildParticle *cpa;
ParticleTexture ptex;
- ParticleKey *kkey[2] = {NULL, NULL};
- HairKey *hkey[2] = {NULL, NULL};
ParticleKey *par=0, keys[4], tstate;
ParticleThreadContext ctx; /* fake thread context for child modifiers */
ParticleInterpolationData pind;
Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/particle_system.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/particle_system.c 2009-07-25 21:33:43 UTC (rev 21903)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/particle_system.c 2009-07-25 22:20:26 UTC (rev 21904)
@@ -2065,7 +2065,6 @@
{
ParticleSystem *kpsys;
ParticleTarget *pt = psys->targets.first;
- int psys_num = BLI_findindex(&ob->particlesystem, psys);
int keys_valid = 1;
psys->totkeyed = 0;
@@ -2087,7 +2086,6 @@
static void set_keyed_keys(Scene *scene, Object *ob, ParticleSystem *psys)
{
- Object *kob = ob;
ParticleSystem *kpsys = psys;
ParticleTarget *pt;
ParticleData *pa;
@@ -2143,7 +2141,7 @@
if(psys->flag & PSYS_KEYED_TIMING && pt->duration!=0.0f)
k++;
- pt = (pt->next && pt->next->flag & PTARGET_VALID) ? pt = pt->next : psys->targets.first;
+ pt = (pt->next && pt->next->flag & PTARGET_VALID)? pt->next : psys->targets.first;
}
psys->flag |= PSYS_KEYED;
Modified: branches/blender2.5/blender/source/blender/blenlib/BLI_kdtree.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenlib/BLI_kdtree.h 2009-07-25 21:33:43 UTC (rev 21903)
+++ branches/blender2.5/blender/source/blender/blenlib/BLI_kdtree.h 2009-07-25 22:20:26 UTC (rev 21904)
@@ -52,7 +52,7 @@
/* Find nearest returns index, and -1 if no node is found.
* Find n nearest returns number of points found, with results in nearest.
-/* Normal is optional, but if given will limit results to points in normal direction from co. */
+ * Normal is optional, but if given will limit results to points in normal direction from co. */
int BLI_kdtree_find_nearest(KDTree *tree, float *co, float *nor, KDTreeNearest *nearest);
int BLI_kdtree_find_n_nearest(KDTree *tree, int n, float *co, float *nor, KDTreeNearest *nearest);
Modified: branches/blender2.5/blender/source/blender/editors/space_view3d/space_view3d.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/space_view3d/space_view3d.c 2009-07-25 21:33:43 UTC (rev 21903)
+++ branches/blender2.5/blender/source/blender/editors/space_view3d/space_view3d.c 2009-07-25 22:20:26 UTC (rev 21904)
@@ -280,7 +280,7 @@
/* copy last mode, then we can re-init the region maps */
rv3d->lastmode= stype;
-
+
keymap= WM_keymap_listbase(wm, "Object Mode", 0, 0);
if(ELEM(stype, 0, NS_MODE_OBJECT))
WM_event_add_keymap_handler(&ar->handlers, keymap);
More information about the Bf-blender-cvs
mailing list