metaforce/Runtime/Particle/CDecalDescription.hpp

41 lines
936 B
C++
Raw Normal View History

2018-10-07 03:42:33 +00:00
#pragma once
2016-02-23 10:34:19 +00:00
#include "CRealElement.hpp"
#include "CIntElement.hpp"
#include "CVectorElement.hpp"
#include "CColorElement.hpp"
#include "CUVElement.hpp"
#include "CParticleDataFactory.hpp"
2018-12-08 05:30:43 +00:00
namespace urde {
2018-03-17 03:41:01 +00:00
2018-12-08 05:30:43 +00:00
struct SQuadDescr {
std::unique_ptr<CIntElement> x0_LFT;
std::unique_ptr<CRealElement> x4_SZE;
std::unique_ptr<CRealElement> x8_ROT;
std::unique_ptr<CVectorElement> xc_OFF;
std::unique_ptr<CColorElement> x10_CLR;
std::unique_ptr<CUVElement> x14_TEX;
bool x18_ADD = false;
2018-03-17 03:41:01 +00:00
};
2018-12-08 05:30:43 +00:00
class CDecalDescription {
2016-02-23 10:34:19 +00:00
public:
2018-12-08 05:30:43 +00:00
SQuadDescr x0_Quads[2];
SParticleModel x38_DMDL;
std::unique_ptr<CIntElement> x48_DLFT;
std::unique_ptr<CVectorElement> x4c_DMOP;
std::unique_ptr<CVectorElement> x50_DMRT;
std::unique_ptr<CVectorElement> x54_DMSC;
std::unique_ptr<CColorElement> x58_DMCL;
union {
struct {
bool x5c_24_DMAB : 1;
bool x5c_25_DMOO : 1;
2016-02-23 10:34:19 +00:00
};
2019-04-07 05:14:48 +00:00
u32 dummy = 0;
2018-12-08 05:30:43 +00:00
};
2016-02-10 22:54:47 +00:00
};
2018-12-08 05:30:43 +00:00
} // namespace urde