sim: Remove "continue physics" code
[blender.git] / source / blender / blenkernel / intern / fluidsim.c
index 587fe75031f53985f7c13eca5ff94ce326ea9e99..efc9869c5ca9689087b1997fed4c4085bb5582d3 100644 (file)
  */
 
 
-#include <stddef.h>
+// headers for fluidsim bobj meshes
+#include <stdlib.h>
+#include <zlib.h>
+#include <string.h>
+#include <stdio.h>
 
 #include "MEM_guardedalloc.h"
 
 #include "DNA_mesh_types.h"
 #include "DNA_meshdata_types.h"
 #include "DNA_object_fluidsim.h"
-#include "DNA_object_force.h" // for pointcache 
+#include "DNA_object_force.h" // for pointcache
 #include "DNA_object_types.h"
 #include "DNA_particle_types.h"
 #include "DNA_scene_types.h" // N_T
 #include "BKE_modifier.h"
 #include "BKE_mesh.h"
 
-
-// headers for fluidsim bobj meshes
-#include <stdlib.h>
-#include "LBM_fluidsim.h"
-#include <zlib.h>
-#include <string.h>
-#include <stdio.h>
-
 /* ************************* fluidsim bobj file handling **************************** */
 
 
 //-------------------------------------------------------------------------------
 
 void initElbeemMesh(struct Scene *scene, struct Object *ob,
-                       int *numVertices, float **vertices,
-         int *numTriangles, int **triangles,
-         int useGlobalCoords, int modifierIndex)
+                    int *numVertices, float **vertices,
+                    int *numTriangles, int **triangles,
+                    int useGlobalCoords, int modifierIndex)
 {
        DerivedMesh *dm = NULL;
        MVert *mvert;
        MFace *mface;
-       int countTris=0, i, totvert, totface;
+       int countTris = 0, i, totvert, totface;
        float *verts;
        int *tris;
 
        dm = mesh_create_derived_index_render(scene, ob, CD_MASK_BAREMESH, modifierIndex);
-       //dm = mesh_create_derived_no_deform(ob,NULL);
+
+       DM_ensure_tessface(dm);
 
        mvert = dm->getVertArray(dm);
        mface = dm->getTessFaceArray(dm);
@@ -90,35 +87,35 @@ void initElbeemMesh(struct Scene *scene, struct Object *ob,
        totface = dm->getNumTessFaces(dm);
 
        *numVertices = totvert;
-       verts = MEM_callocN( totvert*3*sizeof(float), "elbeemmesh_vertices");
-       for(i=0; i<totvert; i++) {
-               copy_v3_v3(&verts[i*3], mvert[i].co);
-               if(useGlobalCoords) { mul_m4_v3(ob->obmat, &verts[i*3]); }
+       verts = MEM_callocN(totvert * 3 * sizeof(float), "elbeemmesh_vertices");
+       for (i = 0; i < totvert; i++) {
+               copy_v3_v3(&verts[i * 3], mvert[i].co);
+               if (useGlobalCoords) { mul_m4_v3(ob->obmat, &verts[i * 3]); }
        }
        *vertices = verts;
 
-       for(i=0; i<totface; i++) {
+       for (i = 0; i < totface; i++) {
                countTris++;
-               if(mface[i].v4) { countTris++; }
+               if (mface[i].v4) { countTris++; }
        }
        *numTriangles = countTris;
-       tris = MEM_callocN( countTris*3*sizeof(int), "elbeemmesh_triangles");
+       tris = MEM_callocN(countTris * 3 * sizeof(int), "elbeemmesh_triangles");
        countTris = 0;
-       for(i=0; i<totface; i++) {
+       for (i = 0; i < totface; i++) {
                int face[4];
                face[0] = mface[i].v1;
                face[1] = mface[i].v2;
                face[2] = mface[i].v3;
                face[3] = mface[i].v4;
 
-               tris[countTris*3+0] = face[0];
-               tris[countTris*3+1] = face[1];
-               tris[countTris*3+2] = face[2];
+               tris[countTris * 3 + 0] = face[0];
+               tris[countTris * 3 + 1] = face[1];
+               tris[countTris * 3 + 2] = face[2];
                countTris++;
-               if(face[3]) {
-                       tris[countTris*3+0] = face[0];
-                       tris[countTris*3+1] = face[2];
-                       tris[countTris*3+2] = face[3];
+               if (face[3]) {
+                       tris[countTris * 3 + 0] = face[0];
+                       tris[countTris * 3 + 1] = face[2];
+                       tris[countTris * 3 + 2] = face[3];
                        countTris++;
                }
        }
@@ -126,3 +123,4 @@ void initElbeemMesh(struct Scene *scene, struct Object *ob,
 
        dm->release(dm);
 }
+