mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-12-09 00:27:42 +00:00
Huge compile performance refactor
This commit is contained in:
@@ -10,8 +10,10 @@
|
||||
#include "DNAMP2/STRG.hpp"
|
||||
|
||||
#include "hecl/ClientProcess.hpp"
|
||||
#include "hecl/Blender/Connection.hpp"
|
||||
|
||||
#include "Runtime/RetroTypes.hpp"
|
||||
#include "nod/nod.hpp"
|
||||
|
||||
namespace DataSpec
|
||||
{
|
||||
@@ -182,7 +184,7 @@ struct SpecMP3 : SpecBase
|
||||
std::vector<ExtractReport>& reps)
|
||||
{
|
||||
doMP3 = true;
|
||||
nod::Partition* partition = disc.getDataPartition();
|
||||
nod::IPartition* partition = disc.getDataPartition();
|
||||
std::unique_ptr<uint8_t[]> dolBuf = partition->getDOLBuf();
|
||||
const char* buildInfo = (char*)memmem(dolBuf.get(), partition->getDOLSize(), "MetroidBuildInfo", 16) + 19;
|
||||
if (!buildInfo)
|
||||
@@ -259,7 +261,7 @@ struct SpecMP3 : SpecBase
|
||||
if (!doMP3 && !doMPTFE)
|
||||
return false;
|
||||
|
||||
nod::Partition* partition = disc.getDataPartition();
|
||||
nod::IPartition* partition = disc.getDataPartition();
|
||||
nod::Node& root = partition->getFSTRoot();
|
||||
|
||||
/* MP3 extract */
|
||||
@@ -408,7 +410,7 @@ struct SpecMP3 : SpecBase
|
||||
progress(sysName.c_str(), _S(""), compIdx, 0.0);
|
||||
}
|
||||
auto pakName = hecl::SystemString(sysName.sys_str());
|
||||
process.addLambdaTransaction([&, pakName](hecl::BlenderToken& btok)
|
||||
process.addLambdaTransaction([&, pakName](hecl::blender::Token& btok)
|
||||
{
|
||||
m_pakRouter.extractResources(pak, force, btok,
|
||||
[&](const hecl::SystemChar* substr, float factor)
|
||||
@@ -467,7 +469,7 @@ struct SpecMP3 : SpecBase
|
||||
progress(sysName.c_str(), _S(""), compIdx, 0.0);
|
||||
}
|
||||
hecl::SystemString pakName(sysName.sys_str());
|
||||
process.addLambdaTransaction([&, pakName](hecl::BlenderToken& btok)
|
||||
process.addLambdaTransaction([&, pakName](hecl::blender::Token& btok)
|
||||
{
|
||||
m_fePakRouter.extractResources(pak, force, btok,
|
||||
[&](const hecl::SystemChar* substr, float factor)
|
||||
@@ -514,43 +516,43 @@ struct SpecMP3 : SpecBase
|
||||
return false;
|
||||
}
|
||||
|
||||
urde::SObjectTag buildTagFromPath(const hecl::ProjectPath& path, hecl::BlenderToken& btok) const
|
||||
urde::SObjectTag buildTagFromPath(const hecl::ProjectPath& path, hecl::blender::Token& btok) const
|
||||
{
|
||||
return {};
|
||||
}
|
||||
|
||||
void cookMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in,
|
||||
BlendStream& ds, bool fast, hecl::BlenderToken& btok,
|
||||
BlendStream& ds, bool fast, hecl::blender::Token& btok,
|
||||
FCookProgress progress)
|
||||
{
|
||||
}
|
||||
|
||||
void cookColMesh(const hecl::ProjectPath& out, const hecl::ProjectPath& in,
|
||||
BlendStream& ds, bool fast, hecl::BlenderToken& btok,
|
||||
BlendStream& ds, bool fast, hecl::blender::Token& btok,
|
||||
FCookProgress progress)
|
||||
{
|
||||
}
|
||||
|
||||
void cookActor(const hecl::ProjectPath& out, const hecl::ProjectPath& in,
|
||||
BlendStream& ds, bool fast, hecl::BlenderToken& btok,
|
||||
BlendStream& ds, bool fast, hecl::blender::Token& btok,
|
||||
FCookProgress progress)
|
||||
{
|
||||
}
|
||||
|
||||
void cookArea(const hecl::ProjectPath& out, const hecl::ProjectPath& in,
|
||||
BlendStream& ds, bool fast, hecl::BlenderToken& btok,
|
||||
BlendStream& ds, bool fast, hecl::blender::Token& btok,
|
||||
FCookProgress progress)
|
||||
{
|
||||
}
|
||||
|
||||
void cookWorld(const hecl::ProjectPath& out, const hecl::ProjectPath& in,
|
||||
BlendStream& ds, bool fast, hecl::BlenderToken& btok,
|
||||
BlendStream& ds, bool fast, hecl::blender::Token& btok,
|
||||
FCookProgress progress)
|
||||
{
|
||||
}
|
||||
|
||||
void cookGuiFrame(const hecl::ProjectPath& out, const hecl::ProjectPath& in,
|
||||
BlendStream& ds, hecl::BlenderToken& btok,
|
||||
BlendStream& ds, hecl::blender::Token& btok,
|
||||
FCookProgress progress)
|
||||
{
|
||||
}
|
||||
@@ -579,17 +581,17 @@ struct SpecMP3 : SpecBase
|
||||
}
|
||||
|
||||
void cookMapArea(const hecl::ProjectPath& out, const hecl::ProjectPath& in,
|
||||
BlendStream& ds, hecl::BlenderToken& btok,
|
||||
BlendStream& ds, hecl::blender::Token& btok,
|
||||
FCookProgress progress)
|
||||
{
|
||||
BlendStream::MapArea mapa = ds.compileMapArea();
|
||||
hecl::blender::MapArea mapa = ds.compileMapArea();
|
||||
ds.close();
|
||||
DNAMP3::MAPA::Cook(mapa, out);
|
||||
progress(_S("Done"));
|
||||
}
|
||||
|
||||
void cookMapUniverse(const hecl::ProjectPath& out, const hecl::ProjectPath& in,
|
||||
BlendStream& ds, hecl::BlenderToken& btok,
|
||||
BlendStream& ds, hecl::blender::Token& btok,
|
||||
FCookProgress progress)
|
||||
{
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user