2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-08 23:47:42 +00:00

PVS implementations

This commit is contained in:
Jack Andersen
2017-02-18 23:27:01 -10:00
parent 56328c3e4d
commit 50fe6d34ab
31 changed files with 498 additions and 175 deletions

View File

@@ -2,21 +2,29 @@
#define __URDE_CPVSAREASET_HPP__
#include "RetroTypes.hpp"
#include "CPVSVisOctree.hpp"
namespace urde
{
class CPVSAreaSet
{
u32 x0_numFeatures;
u32 x4_numLights;
u32 x8_c;
u32 xc_numActors;
u32 x10_leafSize;
u32 x14_lightIndexCount;
const u8* x18_entityIndex;
const u8* x1c_lightLeaves;
CPVSVisOctree x20_octree;
public:
struct CPVSAreaHolder
{
CPVSAreaHolder(CInputStream& in);
};
private:
std::vector<CPVSAreaHolder> xunk;
public:
CPVSAreaSet(CInputStream& in);
CPVSAreaSet(const u8* data, u32 len);
u32 GetNumFeatures() const { return x0_numFeatures; }
u32 GetNumActors() const { return xc_numActors; }
u32 GetEntityIdByIndex(int idx) const { return x18_entityIndex[idx]; }
const CPVSVisOctree& GetVisOctree() { return x20_octree; }
};
}