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

Merge remote-tracking branch 'darkszero/feature/lazy-commit-resources'

# Conflicts:
#	extern/boo
This commit is contained in:
2021-10-25 23:07:56 -04:00
6 changed files with 35 additions and 2 deletions

View File

@@ -346,8 +346,30 @@ public:
static const char* PlatformName() { return g_BooPlatformName; }
static bool g_commitAsLazy;
static void SetCommitResourcesAsLazy(bool newStatus) {
if (newStatus != g_commitAsLazy) {
g_commitAsLazy = newStatus;
if (!newStatus && g_BooFactory) {
g_BooFactory->commitPendingTransaction();
}
}
}
static void CommitResources(const boo::FactoryCommitFunc& commitFunc __BooTraceArgs) {
g_BooFactory->commitTransaction(commitFunc __BooTraceArgsUse);
CommitResources(commitFunc __BooTraceArgsUse, g_commitAsLazy);
}
static void CommitResources(const boo::FactoryCommitFunc& commitFunc __BooTraceArgs, bool lazy) {
if (!g_BooFactory) {
return;
}
if (lazy) {
g_BooFactory->lazyCommitTransaction(commitFunc __BooTraceArgsUse);
} else {
g_BooFactory->commitTransaction(commitFunc __BooTraceArgsUse);
}
}
static void SetShaderDataBinding(const boo::ObjToken<boo::IShaderDataBinding>& binding) {