2016-04-27 00:26:02 +00:00
|
|
|
#ifndef __URDE_CINTERNALRAYCASTSTRUCTURE_HPP__
|
|
|
|
#define __URDE_CINTERNALRAYCASTSTRUCTURE_HPP__
|
|
|
|
|
|
|
|
#include "zeus/CTransform.hpp"
|
|
|
|
#include "zeus/CMRay.hpp"
|
|
|
|
#include "CMaterialFilter.hpp"
|
|
|
|
namespace urde
|
|
|
|
{
|
|
|
|
class CInternalRayCastStructure
|
|
|
|
{
|
|
|
|
zeus::CMRay x0_ray;
|
|
|
|
float x38_maxTime;
|
|
|
|
zeus::CTransform x3c_xf;
|
2017-07-03 03:34:19 +00:00
|
|
|
const CMaterialFilter& x6c_filter;
|
2016-04-27 00:26:02 +00:00
|
|
|
public:
|
2017-03-30 22:36:18 +00:00
|
|
|
CInternalRayCastStructure(const zeus::CVector3f& start, const zeus::CVector3f& dir, float length,
|
|
|
|
const zeus::CTransform& xf, const CMaterialFilter& filter)
|
|
|
|
: x0_ray(start, dir, length),
|
2017-07-03 03:34:19 +00:00
|
|
|
x38_maxTime(length),
|
2016-04-27 00:26:02 +00:00
|
|
|
x3c_xf(xf),
|
|
|
|
x6c_filter(filter)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
const zeus::CMRay& GetRay() const { return x0_ray; }
|
|
|
|
const zeus::CVector3f& GetStart() const { return x0_ray.start; }
|
2017-03-30 22:36:18 +00:00
|
|
|
const zeus::CVector3f& GetNormal() const { return x0_ray.end; }
|
2016-06-24 20:09:38 +00:00
|
|
|
float GetMaxTime() const { return x38_maxTime; }
|
2016-04-27 00:26:02 +00:00
|
|
|
const zeus::CTransform& GetTransform() const { return x3c_xf; }
|
|
|
|
const CMaterialFilter& GetFilter() const { return x6c_filter; }
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif // __URDE_CINTERNALRAYCASTSTRUCTURE_HPP__
|