mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-12-16 00:57:02 +00:00
Self-rebuilding resource cache; init performance improvements
This commit is contained in:
@@ -13,21 +13,23 @@ CSlideShow::CSlideShow()
|
||||
x134_30_ = true;
|
||||
x135_24_ = true;
|
||||
|
||||
const SObjectTag* font = g_ResFactory->GetResourceIdByName(g_tweakSlideShow->GetFont().c_str());
|
||||
if (font)
|
||||
{
|
||||
CGuiTextProperties propsA(false, true, EJustification::Center, EVerticalJustification::Bottom);
|
||||
xc4_textA = std::make_unique<CGuiTextSupport>(font->id, propsA,
|
||||
g_tweakSlideShow->GetFontColor(),
|
||||
g_tweakSlideShow->GetOutlineColor(),
|
||||
zeus::CColor::skWhite, 640, 480, g_SimplePool);
|
||||
|
||||
/* Originally came from SlideShow tweak */
|
||||
SObjectTag font = ProjectManager::g_SharedManager->TagFromPath(_S("MP1/NoARAM/FONT_Deface14B.yaml"));
|
||||
CGuiTextProperties propsB(false, true, EJustification::Right, EVerticalJustification::Bottom);
|
||||
xc8_textB = std::make_unique<CGuiTextSupport>(font->id, propsB,
|
||||
g_tweakSlideShow->GetFontColor(),
|
||||
g_tweakSlideShow->GetOutlineColor(),
|
||||
zeus::CColor::skWhite, 640, 480, g_SimplePool);
|
||||
}
|
||||
|
||||
CGuiTextProperties propsA(false, true, EJustification::Center, EVerticalJustification::Bottom);
|
||||
xc4_textA = std::make_unique<CGuiTextSupport>(font.id, propsA,
|
||||
g_tweakSlideShow->GetFontColor(),
|
||||
g_tweakSlideShow->GetOutlineColor(),
|
||||
zeus::CColor::skWhite, 640, 480, g_SimplePool);
|
||||
|
||||
CGuiTextProperties propsB(false, true, EJustification::Right, EVerticalJustification::Bottom);
|
||||
xc8_textB = std::make_unique<CGuiTextSupport>(font.id, propsB,
|
||||
g_tweakSlideShow->GetFontColor(),
|
||||
g_tweakSlideShow->GetOutlineColor(),
|
||||
zeus::CColor::skWhite, 640, 480, g_SimplePool);
|
||||
xf8_.reserve(18);
|
||||
}
|
||||
|
||||
CIOWin::EMessageReturn CSlideShow::OnMessage(const CArchitectureMessage& msg, CArchitectureQueue& queue)
|
||||
|
||||
@@ -34,16 +34,16 @@ void CTweaks::RegisterTweaks()
|
||||
ProjectResourceFactoryMP1& factory = ProjectManager::g_SharedManager->resourceFactoryMP1();
|
||||
std::experimental::optional<CMemoryInStream> strm;
|
||||
|
||||
SObjectTag tag = factory.ProjectResourceFactoryBase::TagFromPath(_S("MP1/Tweaks/SlideShow.yaml"));
|
||||
strm.emplace(factory.LoadResourceSync(tag).release(), factory.ResourceSize(tag));
|
||||
const SObjectTag* tag = factory.GetResourceIdByName("SlideShow");
|
||||
strm.emplace(factory.LoadResourceSync(*tag).release(), factory.ResourceSize(*tag));
|
||||
g_tweakSlideShow = new DataSpec::DNAMP1::CTweakSlideShow(*strm);
|
||||
|
||||
tag = factory.ProjectResourceFactoryBase::TagFromPath(_S("MP1/Tweaks/Player.yaml"));
|
||||
strm.emplace(factory.LoadResourceSync(tag).release(), factory.ResourceSize(tag));
|
||||
tag = factory.GetResourceIdByName("Player");
|
||||
strm.emplace(factory.LoadResourceSync(*tag).release(), factory.ResourceSize(*tag));
|
||||
g_tweakPlayer = new DataSpec::DNAMP1::CTweakPlayer(*strm);
|
||||
|
||||
tag = factory.ProjectResourceFactoryBase::TagFromPath(_S("MP1/Tweaks/CameraBob.yaml"));
|
||||
strm.emplace(factory.LoadResourceSync(tag).release(), factory.ResourceSize(tag));
|
||||
tag = factory.GetResourceIdByName("CameraBob");
|
||||
strm.emplace(factory.LoadResourceSync(*tag).release(), factory.ResourceSize(*tag));
|
||||
CPlayerCameraBob::ReadTweaks(*strm);
|
||||
}
|
||||
|
||||
@@ -52,12 +52,12 @@ void CTweaks::RegisterResourceTweaks()
|
||||
ProjectResourceFactoryMP1& factory = ProjectManager::g_SharedManager->resourceFactoryMP1();
|
||||
std::experimental::optional<CMemoryInStream> strm;
|
||||
|
||||
SObjectTag tag = factory.ProjectResourceFactoryBase::TagFromPath(_S("MP1/Tweaks/GunRes.yaml"));
|
||||
strm.emplace(factory.LoadResourceSync(tag).release(), factory.ResourceSize(tag));
|
||||
const SObjectTag* tag = factory.GetResourceIdByName("GunRes");
|
||||
strm.emplace(factory.LoadResourceSync(*tag).release(), factory.ResourceSize(*tag));
|
||||
g_tweakGunRes = new DataSpec::DNAMP1::CTweakGunRes(*strm);
|
||||
|
||||
tag = factory.ProjectResourceFactoryBase::TagFromPath(_S("MP1/Tweaks/PlayerRes.yaml"));
|
||||
strm.emplace(factory.LoadResourceSync(tag).release(), factory.ResourceSize(tag));
|
||||
tag = factory.GetResourceIdByName("PlayerRes");
|
||||
strm.emplace(factory.LoadResourceSync(*tag).release(), factory.ResourceSize(*tag));
|
||||
g_tweakPlayerRes = new DataSpec::DNAMP1::CTweakPlayerRes(*strm);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user