[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [12694] trunk/blender/source/blender:
Brecht Van Lommel
brechtvanlommel at pandora.be
Tue Nov 27 17:16:47 CET 2007
Revision: 12694
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=12694
Author: blendix
Date: 2007-11-27 17:16:47 +0100 (Tue, 27 Nov 2007)
Log Message:
-----------
Particles
=========
- Fix for bug in emission from vertices.
- Fix for undo/redo refresh glitch.
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/particle.c
trunk/blender/source/blender/blenloader/intern/readfile.c
Modified: trunk/blender/source/blender/blenkernel/intern/particle.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/particle.c 2007-11-27 14:12:56 UTC (rev 12693)
+++ trunk/blender/source/blender/blenkernel/intern/particle.c 2007-11-27 16:16:47 UTC (rev 12694)
@@ -645,12 +645,12 @@
/* this works for meshes with deform verts only - constructive modifiers wont work properly*/
float temp1[3];
- if(index >= dm->getNumFaces(dm)) {
- PARTICLE_ERROR(nor, vec);
- return;
- }
-
if(from == PART_FROM_VERT) {
+ if(index >= dm->getNumVerts(dm)) {
+ PARTICLE_ERROR(nor, vec);
+ return;
+ }
+
dm->getVertCo(dm,index,vec);
if(nor){
dm->getVertNo(dm,index,nor);
@@ -658,11 +658,20 @@
}
}
else { /* PART_FROM_FACE / PART_FROM_VOLUME */
- MFace *mface=dm->getFaceData(dm,index,CD_MFACE);
+ MFace *mface;
MTFace *mtface=0;
- MVert *mvert=dm->getVertDataArray(dm,CD_MVERT);
- int uv_index=CustomData_get_active_layer_index(&dm->faceData,CD_MTFACE);
+ MVert *mvert;
+ int uv_index;
+ if(index >= dm->getNumFaces(dm)) {
+ PARTICLE_ERROR(nor, vec);
+ return;
+ }
+
+ mface=dm->getFaceData(dm,index,CD_MFACE);
+ mvert=dm->getVertDataArray(dm,CD_MVERT);
+ uv_index=CustomData_get_active_layer_index(&dm->faceData,CD_MTFACE);
+
if(uv_index>=0){
CustomDataLayer *layer=&dm->faceData.layers[uv_index];
mtface= &((MTFace*)layer->data)[index];
Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c 2007-11-27 14:12:56 UTC (rev 12693)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c 2007-11-27 16:16:47 UTC (rev 12694)
@@ -2975,7 +2975,7 @@
psmd->dm=0;
psmd->psys=newdataadr(fd, psmd->psys);
- psmd->flag|=eParticleSystemFlag_Loaded;
+ psmd->flag &= ~eParticleSystemFlag_psys_updated;
} else if (md->type==eModifierType_Explode) {
ExplodeModifierData *psmd = (ExplodeModifierData*) md;
More information about the Bf-blender-cvs
mailing list