XPlor/libs/xassets/xcollisionaabbtree.h

41 lines
920 B
C
Raw Normal View History

2025-08-17 13:14:17 -04:00
#ifndef XCOLLISIONAABBTREE_H
#define XCOLLISIONAABBTREE_H
#include "xasset.h"
#include "xcollisionaabbtreeindex.h"
2025-09-05 18:35:17 -04:00
#include <QVector3D>
2025-08-17 13:14:17 -04:00
class XCollisionAabbTree : public XAsset
{
public:
explicit XCollisionAabbTree();
2025-09-05 18:35:17 -04:00
~XCollisionAabbTree();
2025-08-17 13:14:17 -04:00
void ParseData(QDataStream *aStream) override;
2025-09-05 18:35:17 -04:00
QVector3D GetOrigin() const;
void SetOrigin(QVector3D aOrigin);
2025-08-17 13:14:17 -04:00
2025-09-05 18:35:17 -04:00
QVector3D GetHalfSize() const;
void SetHalfSize(QVector3D aHalfSize);
2025-08-17 13:14:17 -04:00
quint16 GetMaterialIndex() const;
2025-09-05 18:35:17 -04:00
void SetMaterialIndex(quint16 aIndex);
2025-08-17 13:14:17 -04:00
quint16 GetChildCount() const;
2025-09-05 18:35:17 -04:00
void SetChildCount(quint16 aCount);
2025-08-17 13:14:17 -04:00
2025-09-05 18:35:17 -04:00
XCollisionAabbTreeIndex& GetTreeIndex();
void SetTreeIndex(const XCollisionAabbTreeIndex& aTreeIndex);
2025-08-17 13:14:17 -04:00
private:
2025-09-05 18:35:17 -04:00
QVector3D mOrigin;
QVector3D mHalfSize;
2025-08-17 13:14:17 -04:00
quint16 mMaterialIndex = 0;
quint16 mChildCount = 0;
2025-09-05 18:35:17 -04:00
XCollisionAabbTreeIndex mTreeIndex;
2025-08-17 13:14:17 -04:00
};
#endif // XCOLLISIONAABBTREE_H