[Bf-blender-cvs] [db297e7] master: Revert "Fix T43471, based on patch submitted by @sean_loh."

Lukas Tönne noreply at git.blender.org
Sat Feb 14 16:41:51 CET 2015


Commit: db297e7ea314ee1e0f6db796c3dfc6683f64cd22
Author: Lukas Tönne
Date:   Sat Feb 14 16:40:57 2015 +0100
Branches: master
https://developer.blender.org/rBdb297e7ea314ee1e0f6db796c3dfc6683f64cd22

Revert "Fix T43471, based on patch submitted by @sean_loh."

This reverts commit b2b54b0902045ec4f0c1a4cae3209be863878f5b.

The patch breaks particle distribution even in simple cases, not worth
doing this for keeping a hackish loophole open.

===================================================================

M	source/blender/blenkernel/BKE_particle.h
M	source/blender/blenkernel/intern/particle.c
M	source/blender/blenkernel/intern/particle_system.c

===================================================================

diff --git a/source/blender/blenkernel/BKE_particle.h b/source/blender/blenkernel/BKE_particle.h
index 6b94797..a5f12bb 100644
--- a/source/blender/blenkernel/BKE_particle.h
+++ b/source/blender/blenkernel/BKE_particle.h
@@ -403,7 +403,7 @@ float psys_get_dietime_from_cache(struct PointCache *cache, int index);
 void psys_free_pdd(struct ParticleSystem *psys);
 
 float *psys_cache_vgroup(struct DerivedMesh *dm, struct ParticleSystem *psys, int vgroup);
-bool psys_get_texture(struct ParticleSimulationData *sim, struct ParticleData *pa, struct ParticleTexture *ptex, int event, float cfra);
+void psys_get_texture(struct ParticleSimulationData *sim, struct ParticleData *pa, struct ParticleTexture *ptex, int event, float cfra);
 void psys_interpolate_face(struct MVert *mvert, struct MFace *mface, struct MTFace *tface,
                            float (*orcodata)[3], float w[4], float vec[3], float nor[3], float utan[3], float vtan[3],
                            float orco[3], float ornor[3]);
diff --git a/source/blender/blenkernel/intern/particle.c b/source/blender/blenkernel/intern/particle.c
index 72aed1b..2de5f46 100644
--- a/source/blender/blenkernel/intern/particle.c
+++ b/source/blender/blenkernel/intern/particle.c
@@ -3429,7 +3429,7 @@ static void get_cpa_texture(DerivedMesh *dm, ParticleSystem *psys, ParticleSetti
 	CLAMP_PARTICLE_TEXTURE_POS(PAMAP_ROUGH, ptex->rough1);
 	CLAMP_PARTICLE_TEXTURE_POS(PAMAP_DENS, ptex->exist);
 }
-bool psys_get_texture(ParticleSimulationData *sim, ParticleData *pa, ParticleTexture *ptex, int event, float cfra)
+void psys_get_texture(ParticleSimulationData *sim, ParticleData *pa, ParticleTexture *ptex, int event, float cfra)
 {
 	Object *ob = sim->ob;
 	Mesh *me = (Mesh *)ob->data;
@@ -3439,7 +3439,6 @@ bool psys_get_texture(ParticleSimulationData *sim, ParticleData *pa, ParticleTex
 	int m;
 	float value, rgba[4], co[3], texvec[3];
 	int setvars = 0;
-	bool has_texture = false;
 
 	/* initialize ptex */
 	ptex->ivel = ptex->life = ptex->exist = ptex->size = ptex->damp =
@@ -3515,8 +3514,6 @@ bool psys_get_texture(ParticleSimulationData *sim, ParticleData *pa, ParticleTex
 			SET_PARTICLE_TEXTURE(PAMAP_GRAVITY, ptex->gravity, mtex->gravityfac);
 			SET_PARTICLE_TEXTURE(PAMAP_DAMP, ptex->damp, mtex->dampfac);
 			SET_PARTICLE_TEXTURE(PAMAP_LENGTH, ptex->length, mtex->lengthfac);
-			
-			has_texture = true;
 		}
 	}
 
@@ -3529,8 +3526,6 @@ bool psys_get_texture(ParticleSimulationData *sim, ParticleData *pa, ParticleTex
 	CLAMP_PARTICLE_TEXTURE_POSNEG(PAMAP_GRAVITY, ptex->gravity);
 	CLAMP_PARTICLE_TEXTURE_POS(PAMAP_DAMP, ptex->damp);
 	CLAMP_PARTICLE_TEXTURE_POS(PAMAP_LENGTH, ptex->length);
-	
-	return has_texture;
 }
 /************************************************/
 /*			Particle State						*/
diff --git a/source/blender/blenkernel/intern/particle_system.c b/source/blender/blenkernel/intern/particle_system.c
index 4a1573f..0418160 100644
--- a/source/blender/blenkernel/intern/particle_system.c
+++ b/source/blender/blenkernel/intern/particle_system.c
@@ -521,25 +521,22 @@ static void initialize_particle_texture(ParticleSimulationData *sim, ParticleDat
 	ParticleSystem *psys = sim->psys;
 	ParticleSettings *part = psys->part;
 	ParticleTexture ptex;
-	bool has_texture = false;
 
-	has_texture = psys_get_texture(sim, pa, &ptex, PAMAP_INIT, 0.f);
+	psys_get_texture(sim, pa, &ptex, PAMAP_INIT, 0.f);
 	
-	if (has_texture) {
-		switch (part->type) {
-			case PART_EMITTER:
-				if (ptex.exist < psys_frand(psys, p+125))
-					pa->flag |= PARS_UNEXIST;
-				pa->time = part->sta + (part->end - part->sta)*ptex.time;
-				break;
-			case PART_HAIR:
-				if (ptex.exist < psys_frand(psys, p+125))
-					pa->flag |= PARS_UNEXIST;
-				pa->time = 0.f;
-				break;
-			case PART_FLUID:
-				break;
-		}
+	switch (part->type) {
+	case PART_EMITTER:
+		if (ptex.exist < psys_frand(psys, p+125))
+			pa->flag |= PARS_UNEXIST;
+		pa->time = part->sta + (part->end - part->sta)*ptex.time;
+		break;
+	case PART_HAIR:
+		if (ptex.exist < psys_frand(psys, p+125))
+			pa->flag |= PARS_UNEXIST;
+		pa->time = 0.f;
+		break;
+	case PART_FLUID:
+		break;
 	}
 }
 
@@ -972,7 +969,6 @@ void reset_particle(ParticleSimulationData *sim, ParticleData *pa, float dtime,
 	ParticleSettings *part;
 	ParticleTexture ptex;
 	int p = pa - psys->particles;
-	
 	part=psys->part;
 	
 	/* get precise emitter matrix if particle is born */




More information about the Bf-blender-cvs mailing list