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

Initial PATH support for MP2

This commit is contained in:
2020-03-17 23:12:43 -07:00
parent 25842949a9
commit eb9efbf8c3
18 changed files with 411 additions and 303 deletions

View File

@@ -7,10 +7,11 @@
#include <set>
namespace DataSpec {
namespace DNAMP1 {
namespace DNAPATH {
struct PATH;
}
struct AROTBuilder {
using ColMesh = hecl::blender::ColMesh;
@@ -42,13 +43,13 @@ struct AROTBuilder {
void writeColNodes(uint8_t*& ptr, const zeus::CAABox& curAABB);
void pathCountNodesAndLookups(size_t& nodeCount, size_t& lookupCount);
void pathWrite(DNAMP1::PATH& path, const zeus::CAABox& curAABB);
void pathWrite(DNAPATH::PATH& path, const zeus::CAABox& curAABB);
} rootNode;
void build(std::vector<std::vector<uint8_t>>& secs, const zeus::CAABox& fullAabb,
const std::vector<zeus::CAABox>& meshAabbs, const std::vector<DNACMDL::Mesh>& meshes);
std::pair<std::unique_ptr<uint8_t[]>, uint32_t> buildCol(const ColMesh& mesh, BspNodeType& rootOut);
void buildPath(DNAMP1::PATH& path);
void buildPath(DNAPATH::PATH& path);
};
} // namespace DataSpec