#pragma once
#include "body.h"
#include "model_body.h"
#include "vector3.h"
#include "matrix4x4.h"

class ObjMesh;

class DynamicBody : public ModelBody {
public:
  DynamicBody(void);
  virtual ~DynamicBody(void);
  void SetVelocity(vector3d v);
  void SetAngVelocity(vector3d v);
  void SetMesh(ObjMesh* m);
  virtual bool OnCollision(Body* b, Uint32 flags) { return true; }
  vector3d GetAngularMomentum(void);
  void SetMassDistributionFromCollMesh(const CollMesh* m);
  virtual void Disable(void);
  virtual void Enable(void);

  dBodyID m_body;
  dMass   m_mass;

protected:

private:
  ObjMesh* m_mesh;
};