Revision: 47913
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=47913
Author:   genscher
Date:     2012-06-14 18:04:26 +0000 (Thu, 14 Jun 2012)
Log Message:
-----------
- Fix disabled obstacles
- Fix drawing of obstacles_from_derivedmesh

Problems: Obstacles are not airtight yet

Modified Paths:
--------------
    branches/smoke2/source/blender/blenkernel/intern/smoke.c
    branches/smoke2/source/blender/editors/space_view3d/drawvolume.c

Modified: branches/smoke2/source/blender/blenkernel/intern/smoke.c
===================================================================
--- branches/smoke2/source/blender/blenkernel/intern/smoke.c    2012-06-14 
16:55:55 UTC (rev 47912)
+++ branches/smoke2/source/blender/blenkernel/intern/smoke.c    2012-06-14 
18:04:26 UTC (rev 47913)
@@ -631,6 +631,8 @@
 
 static void obstacles_from_derivedmesh(Object *coll_ob, SmokeDomainSettings 
*sds, SmokeCollSettings *scs, unsigned char *obstacle_map, float *velocityX, 
float *velocityY, float *velocityZ, float dt)
 {
+       printf("obstacles_from_derivedmesh\n");
+
        if (!scs->dm) return;
        {
                DerivedMesh *dm = NULL;
@@ -652,6 +654,8 @@
                mface = dm->getTessFaceArray(dm);
                numverts = dm->getNumVerts(dm);
                dvert = dm->getVertDataArray(dm, CD_MDEFORMVERT);
+
+               printf("obstacles_from_derivedmesh with DM\n");
                
                // DG TODO
                // if (sfs->flags & MOD_SMOKE_FLOW_INITVELOCITY) 
@@ -752,6 +756,8 @@
 
                                                /* tag obstacle cells */
                                                obstacle_map[index] = 1 | 8;
+
+                                               // DEBUG printf("added 
obstacle\n");
                                        }
                                }
                        }
@@ -816,7 +822,7 @@
 
                // DG TODO: check if modifier is active?
                
-               if((smd2->type & MOD_SMOKE_TYPE_COLL) && smd2->coll && 
smd2->coll->verts_old)
+               if((smd2->type & MOD_SMOKE_TYPE_COLL) && smd2->coll)
                {
                        SmokeCollSettings *scs = smd2->coll;
                        
@@ -1275,6 +1281,8 @@
 
                        smd->coll->dm = CDDM_copy(dm);
                        DM_ensure_tessface(smd->coll->dm);
+
+                       printf("Collision: Created dm!\n");
                }
 
                if(scene->r.cfra > smd->time)

Modified: branches/smoke2/source/blender/editors/space_view3d/drawvolume.c
===================================================================
--- branches/smoke2/source/blender/editors/space_view3d/drawvolume.c    
2012-06-14 16:55:55 UTC (rev 47912)
+++ branches/smoke2/source/blender/editors/space_view3d/drawvolume.c    
2012-06-14 18:04:26 UTC (rev 47913)
@@ -516,17 +516,21 @@
 
                                float pos[3] = {min[0]+((float)x + 
0.5f)*cell_size, min[1]+((float)y + 0.5f)*cell_size, min[2]+((float)z + 
0.5f)*cell_size};
 
-                               if (heat[index] >= 0.01f) {
-                                       //float col_gb = 1.0f - heat[index];
-                                       //CLAMP(0, 0.0f, 1.0f);
-                                       // glColor3f(1.0f, col_gb, col_gb);
+                               if (heat[index] > 0) {
+                                       GLUquadricObj *qobj = gluNewQuadric();
+                                       gluQuadricDrawStyle(qobj, GLU_FILL);
+
                                        glColor3f(0, 0, 1.0f);
-                                       // glPointSize(24.0f * heat[index]);
-                                       glPointSize(0.01f);
+                                       
+                                       glPushMatrix();
 
-                                       glBegin(GL_POINTS);
-                                       glVertex3f(pos[0], pos[1], pos[2]);
-                                       glEnd();
+                                       glTranslatef(pos[0], pos[1], pos[2]);
+                                       glScalef(domain->dx * domain->scale * 
0.1, domain->dx * domain->scale * 0.1, domain->dx * domain->scale * 0.1);
+                                       gluSphere(qobj, 1.0, 8, 5);     
+
+                                       glPopMatrix();
+       
+                                       gluDeleteQuadric(qobj);
                                }
        }
 }
\ No newline at end of file

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to