mirror of https://github.com/PrimeDecomp/prime.git
Near match CMetroidModelInstances, regswaps in BoundingBoxFromData
This commit is contained in:
parent
a31407c69c
commit
cf99f3047b
|
@ -1,18 +1,28 @@
|
|||
#ifndef _CMETROIDMODELINSTANCE
|
||||
#define _CMETROIDMODELINSTANCE
|
||||
|
||||
#include "Kyoto/Math/CTransform4f.hpp"
|
||||
#include "Kyoto/Math/CAABox.hpp"
|
||||
#include "Kyoto/Math/CTransform4f.hpp"
|
||||
|
||||
#include "rstl/vector.hpp"
|
||||
|
||||
class CMetroidModelInstance {
|
||||
public:
|
||||
CMetroidModelInstance(const void* header, const void* firstGeom,
|
||||
const void* positions, const void* normals,
|
||||
const void* colors, const void* uvs,
|
||||
const void* packedUvs,
|
||||
const rstl::vector< void* >& surfaces);
|
||||
CMetroidModelInstance(const void* header, const void* firstGeom, const void* positions,
|
||||
const void* normals, const void* colors, const void* texCoords,
|
||||
const void* packedTexCoords, const rstl::vector< void* >& surfaces);
|
||||
|
||||
private:
|
||||
u32 x0_visorFlags;
|
||||
CTransform4f x4_worldXf;
|
||||
CAABox x34_worldAABB;
|
||||
const void* x4c_materialData;
|
||||
rstl::vector<void*> x50_surfaces;
|
||||
const void* x60_positions;
|
||||
const void* x64_normals;
|
||||
const void* x68_colors;
|
||||
const void* x6c_texCoords;
|
||||
const void* x70_packedTexCoords;
|
||||
};
|
||||
|
||||
#endif // _CMETROIDMODELINSTANCE
|
||||
|
|
|
@ -17,6 +17,18 @@ CAABox BoundingBoxFromData(const void* ptr) {
|
|||
return CAABox(minX, minY, minZ, maxX, maxY, maxZ);
|
||||
}
|
||||
|
||||
CMetroidModelInstance::CMetroidModelInstance(const void*, const void*, const void*, const void*,
|
||||
const void*, const void*, const void*,
|
||||
const rstl::vector< void* >&) {}
|
||||
CMetroidModelInstance::CMetroidModelInstance(const void* header, const void* firstGeom,
|
||||
const void* positions, const void* normals,
|
||||
const void* colors, const void* texCoords,
|
||||
const void* packedTexCoords,
|
||||
const rstl::vector< void* >& surfaces)
|
||||
: x0_visorFlags(*reinterpret_cast< const uint* >(header))
|
||||
, x4_worldXf(TransformFromData((uchar*)header + sizeof(uint)))
|
||||
, x34_worldAABB(BoundingBoxFromData((uchar*)header + sizeof(CTransform4f) + sizeof(uint)))
|
||||
, x4c_materialData(firstGeom)
|
||||
, x50_surfaces(surfaces)
|
||||
, x60_positions(positions)
|
||||
, x64_normals(normals)
|
||||
, x68_colors(colors)
|
||||
, x6c_texCoords(texCoords)
|
||||
, x70_packedTexCoords(packedTexCoords) {}
|
||||
|
|
Loading…
Reference in New Issue