2018-10-07 03:42:33 +00:00
|
|
|
#pragma once
|
2016-06-28 18:54:55 +00:00
|
|
|
|
2019-09-28 02:53:03 +00:00
|
|
|
#include "Runtime/Graphics/CDrawable.hpp"
|
|
|
|
#include <zeus/CPlane.hpp>
|
2016-06-28 18:54:55 +00:00
|
|
|
|
2021-04-10 08:42:06 +00:00
|
|
|
namespace metaforce {
|
2018-12-08 05:30:43 +00:00
|
|
|
class CDrawablePlaneObject : public CDrawable {
|
|
|
|
friend class Buckets;
|
2020-04-21 07:22:41 +00:00
|
|
|
u16 x24_targetBucket = 0;
|
2018-12-08 05:30:43 +00:00
|
|
|
float x28_farDist;
|
|
|
|
zeus::CPlane x2c_plane;
|
|
|
|
bool x3c_24_invertTest : 1;
|
|
|
|
bool x3c_25_zOnly : 1;
|
|
|
|
|
2016-07-25 22:52:02 +00:00
|
|
|
public:
|
2018-12-08 05:30:43 +00:00
|
|
|
CDrawablePlaneObject(EDrawableType dtype, float closeDist, float farDist, const zeus::CAABox& aabb, bool invertTest,
|
2020-04-09 17:28:20 +00:00
|
|
|
const zeus::CPlane& plane, bool zOnly, void* data)
|
2020-04-21 07:22:41 +00:00
|
|
|
: CDrawable(dtype, 0, closeDist, aabb, data)
|
|
|
|
, x28_farDist(farDist)
|
|
|
|
, x2c_plane(plane)
|
|
|
|
, x3c_24_invertTest{invertTest}
|
|
|
|
, x3c_25_zOnly{zOnly} {}
|
2018-12-08 05:30:43 +00:00
|
|
|
const zeus::CPlane& GetPlane() const { return x2c_plane; }
|
2016-06-28 18:54:55 +00:00
|
|
|
};
|
2021-04-10 08:42:06 +00:00
|
|
|
} // namespace metaforce
|