2015-07-26 21:39:49 +00:00
|
|
|
#ifndef CRAYCOLLISIONHELPER_H
|
|
|
|
#define CRAYCOLLISIONHELPER_H
|
|
|
|
|
|
|
|
#include "CAABox.h"
|
|
|
|
#include "CRay.h"
|
|
|
|
#include "CVector3f.h"
|
|
|
|
#include "SRayIntersection.h"
|
|
|
|
#include "types.h"
|
2015-11-25 21:37:34 +00:00
|
|
|
#include <Core/SViewInfo.h>
|
2015-07-26 21:39:49 +00:00
|
|
|
|
|
|
|
#include <list>
|
|
|
|
|
|
|
|
class CSceneNode;
|
|
|
|
|
|
|
|
class CRayCollisionTester
|
|
|
|
{
|
|
|
|
CRay mRay;
|
|
|
|
std::list<SRayIntersection> mBoxIntersectList;
|
|
|
|
|
|
|
|
public:
|
|
|
|
CRayCollisionTester(const CRay& Ray);
|
|
|
|
~CRayCollisionTester();
|
|
|
|
const CRay& Ray() const;
|
|
|
|
void AddNode(CSceneNode *pNode, u32 AssetIndex, float Distance);
|
2015-11-25 21:37:34 +00:00
|
|
|
SRayIntersection TestNodes(const SViewInfo& ViewInfo);
|
2015-07-26 21:39:49 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
inline const CRay& CRayCollisionTester::Ray() const
|
|
|
|
{
|
|
|
|
return mRay;
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif // CRAYCOLLISIONHELPER_H
|