[Bf-blender-cvs] [e1a9f63] particles_refactor: Added read/write code for NParticleSystemModifierData and NParticleBuffer.

Lukas Tönne noreply at git.blender.org
Tue Apr 22 12:05:23 CEST 2014


Commit: e1a9f63867db736ad8753a9cc7b6aacd47ebdc34
Author: Lukas Tönne
Date:   Tue Jun 4 13:35:13 2013 +0200
https://developer.blender.org/rBe1a9f63867db736ad8753a9cc7b6aacd47ebdc34

Added read/write code for NParticleSystemModifierData and NParticleBuffer.

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

M	source/blender/blenloader/intern/readfile.c
M	source/blender/blenloader/intern/writefile.c

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

diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index c3903d6..ca67d8d 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -79,6 +79,7 @@
 #include "DNA_meshdata_types.h"
 #include "DNA_nla_types.h"
 #include "DNA_node_types.h"
+#include "DNA_nparticle_types.h"
 #include "DNA_object_fluidsim.h" // NT
 #include "DNA_object_types.h"
 #include "DNA_packedFile_types.h"
@@ -4266,6 +4267,14 @@ static void direct_link_pagedbuffer(FileData *fd, bPagedBuffer *pbuf)
 }
 
 
+/* ************ READ NPARTICLE BUFFER ***************** */
+
+static void direct_link_nparticle_buffer(FileData *fd, NParticleBuffer *buffer)
+{
+	direct_link_pagedbuffer(fd, &buffer->data);
+}
+
+
 /* ************ READ OBJECT ***************** */
 
 static void lib_link_modifiers__linkModifiers(void *userData, Object *ob,
@@ -4830,6 +4839,10 @@ static void direct_link_modifiers(FileData *fd, ListBase *lb)
 			if (wmd->cmap_curve)
 				direct_link_curvemapping(fd, wmd->cmap_curve);
 		}
+		else if (md->type == eModifierType_NParticleSystem) {
+			NParticleSystemModifierData *pmd = (NParticleSystemModifierData *)md;
+			direct_link_nparticle_buffer(fd, pmd->buffer);
+		}
 		else if (md->type == eModifierType_LaplacianDeform) {
 			LaplacianDeformModifierData *lmd = (LaplacianDeformModifierData *)md;
 
diff --git a/source/blender/blenloader/intern/writefile.c b/source/blender/blenloader/intern/writefile.c
index 8b70640..e2454e4 100644
--- a/source/blender/blenloader/intern/writefile.c
+++ b/source/blender/blenloader/intern/writefile.c
@@ -117,6 +117,7 @@
 #include "DNA_meshdata_types.h"
 #include "DNA_material_types.h"
 #include "DNA_node_types.h"
+#include "DNA_nparticle_types.h"
 #include "DNA_object_types.h"
 #include "DNA_object_force.h"
 #include "DNA_pagedbuffer_types.h"
@@ -1383,6 +1384,11 @@ static void write_pagedbuffer(WriteData *wd, bPagedBuffer *pbuf)
 #endif
 }
 
+static void write_nparticle_buffer(WriteData *wd, NParticleBuffer *buffer)
+{
+	write_pagedbuffer(wd, &buffer->data);
+}
+
 static void write_modifiers(WriteData *wd, ListBase *modbase)
 {
 	ModifierData *md;
@@ -1500,6 +1506,10 @@ static void write_modifiers(WriteData *wd, ListBase *modbase)
 			if (wmd->cmap_curve)
 				write_curvemapping(wd, wmd->cmap_curve);
 		}
+		else if (md->type==eModifierType_NParticleSystem) {
+			NParticleSystemModifierData *pmd = (NParticleSystemModifierData *)md;
+			write_nparticle_buffer(wd, pmd->buffer);
+		}
 		else if (md->type==eModifierType_LaplacianDeform) {
 			LaplacianDeformModifierData *lmd = (LaplacianDeformModifierData*) md;




More information about the Bf-blender-cvs mailing list