X-Git-Url: http://git.mutantstargoat.com?a=blobdiff_plain;f=src%2Fhair.h;h=9ef5130499cba99497baf0d104f4d4491ba8d56e;hb=a65a977df6fa8fee831c91cdc754d62e023b6630;hp=be979ee6374daa9b3bdce779678d4b224a1b1c97;hpb=ed91d376224c1efe305d483c05f837820df75b71;p=hair diff --git a/src/hair.h b/src/hair.h index be979ee..9ef5130 100644 --- a/src/hair.h +++ b/src/hair.h @@ -4,12 +4,11 @@ #include #include "mesh.h" +#include "object.h" struct HairStrand { Vec3 pos; Vec3 velocity; - /* directions relative to the spawn point */ - Vec3 anchor_dirs[3]; Vec3 spawn_pt; Vec3 spawn_dir; }; @@ -18,6 +17,8 @@ class Hair { private: float hair_length; std::vector hair; + Mat4 xform; + std::vector colliders; public: Hair(); @@ -25,6 +26,11 @@ 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); + void add_collider(CollSphere *cobj); + Vec3 handle_collision(const Vec3 &v) const; }; #endif //PARTICLES_H_