2016-06-24 20:09:38 +00:00
|
|
|
#ifndef __URDE_CCOLLISIONSURFACE_HPP__
|
|
|
|
#define __URDE_CCOLLISIONSURFACE_HPP__
|
|
|
|
|
|
|
|
#include "zeus/zeus.hpp"
|
|
|
|
#include "RetroTypes.hpp"
|
|
|
|
|
|
|
|
namespace urde
|
|
|
|
{
|
|
|
|
class CCollisionSurface
|
|
|
|
{
|
|
|
|
zeus::CVector3f x0_a;
|
|
|
|
zeus::CVector3f xc_b;
|
|
|
|
zeus::CVector3f x18_c;
|
|
|
|
u32 x24_flags;
|
|
|
|
public:
|
|
|
|
CCollisionSurface(const zeus::CVector3f&, const zeus::CVector3f&, const zeus::CVector3f&, u32);
|
|
|
|
|
2016-12-26 07:58:44 +00:00
|
|
|
zeus::CVector3f GetNormal() const;
|
2017-06-24 04:58:59 +00:00
|
|
|
const zeus::CVector3f& GetVert(s32 idx) const { return (&x0_a)[idx]; }
|
2017-06-26 01:36:31 +00:00
|
|
|
const zeus::CVector3f* GetVerts() const { return &x0_a; }
|
2016-12-26 07:58:44 +00:00
|
|
|
zeus::CVector3f GetPoint(s32) const;
|
|
|
|
zeus::CPlane GetPlane() const;
|
2017-03-30 22:36:18 +00:00
|
|
|
u32 GetSurfaceFlags() const { return x24_flags; }
|
2016-06-24 20:09:38 +00:00
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif // __URDE_CCOLLISIONSURFACE_HPP__
|