From 4174364adcf58ee967c12538b805c794c15d4353 Mon Sep 17 00:00:00 2001
From: Philip Rosedale <philip@coffeeandpower.com>
Date: Sun, 18 Nov 2012 10:45:41 -0800
Subject: [PATCH] Further work on Cloud class

---
 cloud.cpp                                     |  23 +++-----------
 field.cpp                                     |  15 +++++++++
 field.h                                       |   1 +
 .../UserInterfaceState.xcuserstate            | Bin 101370 -> 101260 bytes
 .../xcdebugger/Breakpoints.xcbkptlist         |   6 ++--
 main.cpp                                      |  30 +++++++++++-------
 6 files changed, 42 insertions(+), 33 deletions(-)

diff --git a/cloud.cpp b/cloud.cpp
index a0bdcceec3..18a05ced44 100644
--- a/cloud.cpp
+++ b/cloud.cpp
@@ -63,34 +63,21 @@ void Cloud::render() {
 
 void Cloud::simulate (float deltaTime) {
     int i;
-    float verts[3], fadd[3], fval[3];
     for (i = 0; i < count; ++i) {
         
         // Update position 
         //particles[i].position += particles[i].velocity*deltaTime;
         particles[i].position += particles[i].velocity;
 
-        
-        // Drag: decay velocity
+        // Decay Velocity (Drag)
         const float CONSTANT_DAMPING = 1.0;
         particles[i].velocity *= (1.f - CONSTANT_DAMPING*deltaTime);
                 
-        // Read from field 
-        verts[0] = particles[i].position.x;
-        verts[1] = particles[i].position.y;
-        verts[2] = particles[i].position.z;
-        field_value(fval, &verts[0]);
-        particles[i].velocity.x += fval[0];
-        particles[i].velocity.y += fval[1];
-        particles[i].velocity.z += fval[2];
-        
-        // Add back to field
+        // Interact with Field
         const float FIELD_COUPLE = 0.0000001;
-        fadd[0] = particles[i].velocity.x*FIELD_COUPLE;
-        fadd[1] = particles[i].velocity.y*FIELD_COUPLE;
-        fadd[2] = particles[i].velocity.z*FIELD_COUPLE;
-        field_add(fadd, &verts[0]);
-            
+        field_interact(&particles[i].position, &particles[i].velocity, FIELD_COUPLE);
+        
+        //  Bounce or Wrap 
         if (wrapBounds) {
             // wrap around bounds
             if (particles[i].position.x > bounds.x)
diff --git a/field.cpp b/field.cpp
index b4a9351a46..d08c93822c 100644
--- a/field.cpp
+++ b/field.cpp
@@ -60,6 +60,21 @@ void field_add(float* add, float *pos)
     }
 }
 
+void field_interact(glm::vec3 * pos, glm::vec3 * vel, float coupling) {
+     
+    int index = (int)(pos->x/WORLD_SIZE*10.0) + 
+    (int)(pos->y/WORLD_SIZE*10.0)*10 + 
+    (int)(pos->z/WORLD_SIZE*10.0)*100;
+    if ((index >= 0) && (index < FIELD_ELEMENTS)) {
+        //  Add velocity to particle from field
+        *vel += field[index].val;
+        //  Add back to field from particle velocity 
+        glm::vec3 temp = *vel;
+        temp *= coupling;
+        field[index].val += temp;
+    }
+}
+
 void field_avg_neighbors(int index, glm::vec3 * result) {
     //  Given index to field element i, return neighbor field values 
     glm::vec3 neighbors(0,0,0);
diff --git a/field.h b/field.h
index 2d0dbac757..e1d26206f2 100644
--- a/field.h
+++ b/field.h
@@ -27,6 +27,7 @@ void field_init();
 int field_value(float *ret, float *pos);
 void field_render();
 void field_add(float* add, float *loc);
+void field_interact(glm::vec3 * pos, glm::vec3 * vel, float coupling);
 void field_simulate(float dt);
 
 #endif
diff --git a/interface.xcodeproj/project.xcworkspace/xcuserdata/philip.xcuserdatad/UserInterfaceState.xcuserstate b/interface.xcodeproj/project.xcworkspace/xcuserdata/philip.xcuserdatad/UserInterfaceState.xcuserstate
index 9cf966bff86303aa87ea0c9963c3cc86906f6585..d1f81ce64c67c4f45d200e9d7b00025121c7c034 100644
GIT binary patch
delta 25123
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
Dyxl=H

delta 25187
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
VPlD~Y&;Me@&;A$xf91dh{}+ieUXB0&

diff --git a/interface.xcodeproj/xcuserdata/philip.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist b/interface.xcodeproj/xcuserdata/philip.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist
index d8e15f635a..556fc539eb 100644
--- a/interface.xcodeproj/xcuserdata/philip.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist
+++ b/interface.xcodeproj/xcuserdata/philip.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist
@@ -8,11 +8,11 @@
          ignoreCount = "0"
          continueAfterRunningActions = "No"
          filePath = "field.cpp"
-         timestampString = "372274896.176083"
+         timestampString = "374955033.430214"
          startingColumnNumber = "9223372036854775807"
          endingColumnNumber = "9223372036854775807"
-         startingLineNumber = "83"
-         endingLineNumber = "83"
+         startingLineNumber = "98"
+         endingLineNumber = "98"
          landmarkName = "field_avg_neighbors(int index, glm::vec3 * result)"
          landmarkType = "7">
       </FileBreakpoint>
diff --git a/main.cpp b/main.cpp
index cf2ecbac8a..84d7587730 100644
--- a/main.cpp
+++ b/main.cpp
@@ -58,6 +58,7 @@ using namespace std;
 //   Junk for talking to the Serial Port 
 int serial_on = 0;                  //  Is serial connection on/off?  System will try
 int audio_on = 0;                   //  Whether to turn on the audio support 
+int simulate_on = 1; 
 
 //  Network Socket Stuff 
 //  For testing, add milliseconds of delay for received UDP packets
@@ -96,13 +97,13 @@ Hand myHand(HAND_RADIUS,
 glm::vec3 box(WORLD_SIZE,WORLD_SIZE,WORLD_SIZE);
 ParticleSystem balls(0, 
                      box, 
-                     false,                     // Wrap?
-                     0.02,                       // Noise
+                     false,                     //  Wrap?
+                     0.02,                      //  Noise
                      0.3,                       //  Size scale 
-                     0.0                        // Gravity 
+                     0.0                        //  Gravity 
                      );
 
-Cloud cloud(0,                              //  Particles
+Cloud cloud(250000,                             //  Particles
             box,                                //  Bounding Box
             false                               //  Wrap
             );
@@ -120,7 +121,7 @@ Cloud cloud(0,                              //  Particles
 #define RENDER_FRAME_MSECS 10
 #define SLEEP 0
 
-#define NUM_TRIS 250000  
+#define NUM_TRIS 0  
 struct {
     float vertices[NUM_TRIS * 3];
     float vel     [NUM_TRIS * 3];
@@ -394,6 +395,7 @@ void update_tris()
                  
         if (tris.element[i] == 1) 
         {
+            
             // Read and add velocity from field 
             field_value(field_val, &tris.vertices[i*3]);
             tris.vel[i*3] += field_val[0];
@@ -406,6 +408,7 @@ void update_tris()
             field_contrib[1] = tris.vel[i*3+1]*FIELD_COUPLE;
             field_contrib[2] = tris.vel[i*3+2]*FIELD_COUPLE;
             field_add(field_contrib, &tris.vertices[i*3]);
+            
         }
 
         // bounce at edge of world 
@@ -734,7 +737,7 @@ void key(unsigned char k, int x, int y)
 	if (k == '/')  stats_on = !stats_on;		// toggle stats
 	if (k == 'n') 
     {
-        noise_on = !noise_on;			// Toggle noise 
+        noise_on = !noise_on;                   // Toggle noise 
         if (noise_on)
         {
             myHand.setNoise(noise);
@@ -759,6 +762,7 @@ void key(unsigned char k, int x, int y)
     if (k == ' ') reset_sensors();
     if (k == 'a') render_yaw_rate -= 0.25;
     if (k == 'd') render_yaw_rate += 0.25;
+    if (k == 'o') simulate_on = !simulate_on;
     if (k == 'p') 
     {
         // Add to field vector 
@@ -808,12 +812,14 @@ void idle(void)
     {
         //  Simulation
         update_pos(1.f/FPS); 
-        update_tris();
-        field_simulate(1.f/FPS);
-        myHead.simulate(1.f/FPS);
-        myHand.simulate(1.f/FPS);
-        balls.simulate(1.f/FPS);
-        cloud.simulate(1.f/FPS);
+        if (simulate_on) {
+            update_tris();
+            field_simulate(1.f/FPS);
+            myHead.simulate(1.f/FPS);
+            myHand.simulate(1.f/FPS);
+            balls.simulate(1.f/FPS);
+            cloud.simulate(1.f/FPS);
+        }
 
         if (!step_on) glutPostRedisplay();
         last_frame = check;