coeng
annotate src/co_phys.h @ 6:2f872a179914
first component test:
- prs, xform, physics components with dependencies
- topological sort of components to update them in the correct order
- debug visualization component
todo: remove draw() from components, doesn't make sense
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Sat, 14 Feb 2015 07:27:12 +0200 |
parents | 0e5da17d589c |
children | 8cce82794f90 |
rev | line source |
---|---|
nuclear@0 | 1 #ifndef COMP_PHYS_H_ |
nuclear@0 | 2 #define COMP_PHYS_H_ |
nuclear@0 | 3 |
nuclear@0 | 4 #include <vmath/vmath.h> |
nuclear@0 | 5 #include "comp.h" |
nuclear@6 | 6 #include "co_xform.h" |
nuclear@6 | 7 |
nuclear@6 | 8 class SimWorld; |
nuclear@0 | 9 |
nuclear@5 | 10 class CoRigid : public Component { |
nuclear@6 | 11 protected: |
nuclear@6 | 12 CoPRS *co_prs; // cached PRS component of the parent object |
nuclear@6 | 13 |
nuclear@6 | 14 const char **update_before() const; |
nuclear@6 | 15 |
nuclear@0 | 16 public: |
nuclear@6 | 17 SimWorld *world; |
nuclear@0 | 18 float mass, elast, friction; |
nuclear@6 | 19 Vector3 vel, force; |
nuclear@6 | 20 Vector3 impulse; |
nuclear@0 | 21 |
nuclear@5 | 22 CoRigid(); |
nuclear@3 | 23 |
nuclear@6 | 24 void add_impulse(const Vector3 &v); |
nuclear@6 | 25 |
nuclear@6 | 26 void update(float dt); |
nuclear@0 | 27 }; |
nuclear@0 | 28 |
nuclear@0 | 29 #endif // COMP_PHYS_H_ |