added forces + damping, k factors
[hair] / src / hair.h
index 19fa82e..6cbf14e 100644 (file)
@@ -5,10 +5,20 @@
 
 #include "mesh.h" 
 
+struct HairStrand {
+       Vec3 pos;
+       Vec3 velocity;
+       /* directions relative to the spawn point */
+       Vec3 anchor_dirs[3];
+       Vec3 spawn_pt;
+       Vec3 spawn_dir;
+};
+
 class Hair {
 private:
-       std::vector<Vec3> spawn_points;
-       std::vector<Vec3> spawn_directions;
+       float hair_length;
+       std::vector<HairStrand> hair;
+       Mat4 xform;
 
 public:
        Hair();
@@ -16,6 +26,9 @@ public:
 
        bool init(const Mesh *m, int num_spawns, float thresh = 0.4);
        void draw() const;
+
+       void set_transform(Mat4 &xform);
+       void update(float dt);
 };
 
 #endif //PARTICLES_H_