erebus
diff liberebus/src/snode.h @ 1:59a72293f9bd
continuing
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Mon, 28 Apr 2014 05:58:22 +0300 |
parents | 4abdce1361b9 |
children | 474a0244f57d |
line diff
1.1 --- a/liberebus/src/snode.h Sun Apr 27 16:02:47 2014 +0300 1.2 +++ b/liberebus/src/snode.h Mon Apr 28 05:58:22 2014 +0300 1.3 @@ -16,8 +16,11 @@ 1.4 SceneNode *parent; 1.5 std::vector<SceneNode*> children; 1.6 1.7 + Matrix4x4 node_xform, xform; 1.8 + 1.9 public: 1.10 void add_child(SceneNode *node); 1.11 + bool remove_child(SceneNode *node); 1.12 1.13 int get_num_children() const; 1.14 SceneNode *get_child(int idx) const; 1.15 @@ -30,12 +33,14 @@ 1.16 const Quaternion &get_node_rotation() const; 1.17 const Vector3 &get_node_scaling() const; 1.18 1.19 - const Vector3 &get_position() const; 1.20 - const Quaternion &get_rotation() const; 1.21 - const Vector3 &get_scaling() const; 1.22 + Vector3 get_position() const; 1.23 + Quaternion get_rotation() const; 1.24 + Vector3 get_scaling() const; 1.25 1.26 - void update_node(long msec = 0) const; 1.27 - void update(long msec = 0) const; 1.28 + void update_node(long msec = 0); 1.29 + void update(long msec = 0); 1.30 + 1.31 + bool intersect(const Ray &ray, RayHit *hit) const; 1.32 }; 1.33 1.34 #endif // SNODE_H_ 1.35 \ No newline at end of file