2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2025-12-07 19:57:48 +00:00

WIP: Converted custom map linker into different asset files

This commit is contained in:
LJW-Dev
2025-10-24 02:56:17 +08:00
parent a81944a7be
commit 948ba5ba8b
15 changed files with 1255 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
#pragma once
#include "../BSP.h"
#include "Asset/IAssetCreator.h"
#include "SearchPath/ISearchPath.h"
#include "Utils/MemoryManager.h"
#include "../BSPCalculation.h"
namespace BSP
{
class ClipMapLinker
{
public:
ClipMapLinker(MemoryManager& memory, ISearchPath& searchPath, AssetCreationContext& context);
AssetCreationResult linkClipMap(BSPData* bsp);
private:
MemoryManager& m_memory;
ISearchPath& m_search_path;
AssetCreationContext& m_context;
void loadBoxData(clipMap_t* clipMap);
void loadVisibility(clipMap_t* clipMap);
void loadDynEnts(clipMap_t* clipMap);
void loadRopesAndConstraints(clipMap_t* clipMap);
void loadSubModelCollision(clipMap_t* clipMap, BSPData* bsp);
void loadXModelCollision(clipMap_t* clipMap);
bool loadBrushCollision(clipMap_t* clipMap, BSPData* bsp);
void populateBSPTree(clipMap_t* clipMap, BSPTree* tree);
bool createPartitions(clipMap_t* clipMap, BSPData* bsp);
};
}