mirror of https://github.com/AxioDL/metaforce.git
Remaining object tracker platforms
This commit is contained in:
parent
d2fda8a373
commit
a3b9a32633
|
@ -2,7 +2,7 @@
|
||||||
#ifndef NOMINMAX
|
#ifndef NOMINMAX
|
||||||
#define NOMINMAX
|
#define NOMINMAX
|
||||||
#endif
|
#endif
|
||||||
#define WIN_PAUSE 1
|
#define WIN_PAUSE 0
|
||||||
#include <objbase.h>
|
#include <objbase.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Subproject commit 3a7987bb21b0db3873948e82520fa88c6981f436
|
Subproject commit 6c3a35f15d06c84c7f7be9055993c14715323145
|
|
@ -302,7 +302,7 @@ static inline int Rename(const SystemChar* oldpath, const SystemChar* newpath)
|
||||||
{
|
{
|
||||||
#if HECL_UCS2
|
#if HECL_UCS2
|
||||||
//return _wrename(oldpath, newpath);
|
//return _wrename(oldpath, newpath);
|
||||||
return ReplaceFileW(newpath, oldpath, nullptr, 0, nullptr, nullptr) == 0;
|
return MoveFileExW(oldpath, newpath, MOVEFILE_REPLACE_EXISTING | MOVEFILE_WRITE_THROUGH) == 0;
|
||||||
#else
|
#else
|
||||||
return rename(oldpath, newpath);
|
return rename(oldpath, newpath);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -635,7 +635,7 @@ struct SPIRVBackendFactory : IShaderBackendFactory
|
||||||
const hecl::Frontend::IR& ir,
|
const hecl::Frontend::IR& ir,
|
||||||
hecl::Frontend::Diagnostics& diag,
|
hecl::Frontend::Diagnostics& diag,
|
||||||
boo::IGraphicsDataFactory::Context& ctx,
|
boo::IGraphicsDataFactory::Context& ctx,
|
||||||
boo::IShaderPipeline*& objOut)
|
boo::ObjToken<boo::IShaderPipeline>& objOut)
|
||||||
{
|
{
|
||||||
m_backend.reset(ir, diag);
|
m_backend.reset(ir, diag);
|
||||||
|
|
||||||
|
@ -704,8 +704,9 @@ struct SPIRVBackendFactory : IShaderBackendFactory
|
||||||
return dataOut;
|
return dataOut;
|
||||||
}
|
}
|
||||||
|
|
||||||
boo::IShaderPipeline* buildShaderFromCache(const ShaderCachedData& data,
|
boo::ObjToken<boo::IShaderPipeline>
|
||||||
boo::IGraphicsDataFactory::Context& ctx)
|
buildShaderFromCache(const ShaderCachedData& data,
|
||||||
|
boo::IGraphicsDataFactory::Context& ctx)
|
||||||
{
|
{
|
||||||
const ShaderTag& tag = data.m_tag;
|
const ShaderTag& tag = data.m_tag;
|
||||||
athena::io::MemoryReader r(data.m_data.get(), data.m_sz, false, false);
|
athena::io::MemoryReader r(data.m_data.get(), data.m_sz, false, false);
|
||||||
|
@ -731,7 +732,7 @@ struct SPIRVBackendFactory : IShaderBackendFactory
|
||||||
if (r.hasError())
|
if (r.hasError())
|
||||||
return nullptr;
|
return nullptr;
|
||||||
|
|
||||||
boo::IShaderPipeline* ret =
|
boo::ObjToken<boo::IShaderPipeline> ret =
|
||||||
static_cast<boo::VulkanDataFactory::Context&>(ctx).
|
static_cast<boo::VulkanDataFactory::Context&>(ctx).
|
||||||
newShaderPipeline(nullptr, nullptr,
|
newShaderPipeline(nullptr, nullptr,
|
||||||
&vertBlob, &fragBlob, &pipelineBlob,
|
&vertBlob, &fragBlob, &pipelineBlob,
|
||||||
|
@ -777,7 +778,7 @@ struct SPIRVBackendFactory : IShaderBackendFactory
|
||||||
tag.getReflectionType(), slot.lighting, slot.post, slot.texCount, slot.texs);
|
tag.getReflectionType(), slot.lighting, slot.post, slot.texCount, slot.texs);
|
||||||
pipeBlobs.emplace_back();
|
pipeBlobs.emplace_back();
|
||||||
Blobs& pipeBlob = pipeBlobs.back();
|
Blobs& pipeBlob = pipeBlobs.back();
|
||||||
boo::IShaderPipeline* ret =
|
boo::ObjToken<boo::IShaderPipeline> ret =
|
||||||
static_cast<boo::VulkanDataFactory::Context&>(ctx).
|
static_cast<boo::VulkanDataFactory::Context&>(ctx).
|
||||||
newShaderPipeline(vertSource.c_str(), fragSource.c_str(),
|
newShaderPipeline(vertSource.c_str(), fragSource.c_str(),
|
||||||
&pipeBlob.vert, &pipeBlob.frag, &pipeBlob.pipeline,
|
&pipeBlob.vert, &pipeBlob.frag, &pipeBlob.pipeline,
|
||||||
|
@ -894,7 +895,7 @@ struct SPIRVBackendFactory : IShaderBackendFactory
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
boo::IShaderPipeline* ret =
|
boo::ObjToken<boo::IShaderPipeline> ret =
|
||||||
static_cast<boo::VulkanDataFactory::Context&>(ctx).
|
static_cast<boo::VulkanDataFactory::Context&>(ctx).
|
||||||
newShaderPipeline(nullptr, nullptr,
|
newShaderPipeline(nullptr, nullptr,
|
||||||
&vertBlob, &fragBlob, &pipelineBlob,
|
&vertBlob, &fragBlob, &pipelineBlob,
|
||||||
|
|
|
@ -360,7 +360,7 @@ struct HLSLBackendFactory : IShaderBackendFactory
|
||||||
const hecl::Frontend::IR& ir,
|
const hecl::Frontend::IR& ir,
|
||||||
hecl::Frontend::Diagnostics& diag,
|
hecl::Frontend::Diagnostics& diag,
|
||||||
boo::IGraphicsDataFactory::Context& ctx,
|
boo::IGraphicsDataFactory::Context& ctx,
|
||||||
boo::IShaderPipeline*& objOut)
|
boo::ObjToken<boo::IShaderPipeline>& objOut)
|
||||||
{
|
{
|
||||||
m_backend.reset(ir, diag);
|
m_backend.reset(ir, diag);
|
||||||
|
|
||||||
|
@ -431,8 +431,9 @@ struct HLSLBackendFactory : IShaderBackendFactory
|
||||||
return dataOut;
|
return dataOut;
|
||||||
}
|
}
|
||||||
|
|
||||||
boo::IShaderPipeline* buildShaderFromCache(const ShaderCachedData& data,
|
boo::ObjToken<boo::IShaderPipeline>
|
||||||
boo::IGraphicsDataFactory::Context& ctx)
|
buildShaderFromCache(const ShaderCachedData& data,
|
||||||
|
boo::IGraphicsDataFactory::Context& ctx)
|
||||||
{
|
{
|
||||||
const ShaderTag& tag = data.m_tag;
|
const ShaderTag& tag = data.m_tag;
|
||||||
athena::io::MemoryReader r(data.m_data.get(), data.m_sz, false, false);
|
athena::io::MemoryReader r(data.m_data.get(), data.m_sz, false, false);
|
||||||
|
@ -469,7 +470,7 @@ struct HLSLBackendFactory : IShaderBackendFactory
|
||||||
if (r.hasError())
|
if (r.hasError())
|
||||||
return nullptr;
|
return nullptr;
|
||||||
|
|
||||||
boo::IShaderPipeline* ret =
|
boo::ObjToken<boo::IShaderPipeline> ret =
|
||||||
static_cast<boo::ID3DDataFactory::Context&>(ctx).
|
static_cast<boo::ID3DDataFactory::Context&>(ctx).
|
||||||
newShaderPipeline(nullptr, nullptr,
|
newShaderPipeline(nullptr, nullptr,
|
||||||
ReferenceComPtr(vertBlob), ReferenceComPtr(fragBlob), ReferenceComPtr(pipelineBlob),
|
ReferenceComPtr(vertBlob), ReferenceComPtr(fragBlob), ReferenceComPtr(pipelineBlob),
|
||||||
|
@ -534,7 +535,7 @@ struct HLSLBackendFactory : IShaderBackendFactory
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
boo::IShaderPipeline* ret =
|
boo::ObjToken<boo::IShaderPipeline> ret =
|
||||||
static_cast<boo::ID3DDataFactory::Context&>(ctx).
|
static_cast<boo::ID3DDataFactory::Context&>(ctx).
|
||||||
newShaderPipeline(vertSource.c_str(), fragSource.c_str(),
|
newShaderPipeline(vertSource.c_str(), fragSource.c_str(),
|
||||||
ReferenceComPtr(thisPipeBlobs.vert), ReferenceComPtr(thisPipeBlobs.frag), ReferenceComPtr(thisPipeBlobs.pipeline),
|
ReferenceComPtr(thisPipeBlobs.vert), ReferenceComPtr(thisPipeBlobs.frag), ReferenceComPtr(thisPipeBlobs.pipeline),
|
||||||
|
@ -654,7 +655,7 @@ struct HLSLBackendFactory : IShaderBackendFactory
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
boo::IShaderPipeline* ret =
|
boo::ObjToken<boo::IShaderPipeline> ret =
|
||||||
static_cast<boo::ID3DDataFactory::Context&>(ctx).
|
static_cast<boo::ID3DDataFactory::Context&>(ctx).
|
||||||
newShaderPipeline(nullptr, nullptr,
|
newShaderPipeline(nullptr, nullptr,
|
||||||
ReferenceComPtr(vertBlob), ReferenceComPtr(fragBlob), ReferenceComPtr(pipelineBlob),
|
ReferenceComPtr(vertBlob), ReferenceComPtr(fragBlob), ReferenceComPtr(pipelineBlob),
|
||||||
|
|
|
@ -187,7 +187,7 @@ bool Project::ConfigFile::unlockAndCommit()
|
||||||
{
|
{
|
||||||
#if HECL_UCS2
|
#if HECL_UCS2
|
||||||
//_wrename(newPath.c_str(), m_filepath.c_str());
|
//_wrename(newPath.c_str(), m_filepath.c_str());
|
||||||
ReplaceFileW(m_filepath.c_str(), newPath.c_str(), nullptr, 0, nullptr, nullptr);
|
MoveFileExW(newPath.c_str(), m_filepath.c_str(), MOVEFILE_REPLACE_EXISTING | MOVEFILE_WRITE_THROUGH);
|
||||||
#else
|
#else
|
||||||
rename(newPath.c_str(), m_filepath.c_str());
|
rename(newPath.c_str(), m_filepath.c_str());
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -108,6 +108,8 @@ void SanitizePath(std::string& path)
|
||||||
}
|
}
|
||||||
return a;
|
return a;
|
||||||
});
|
});
|
||||||
|
while (path.back() == '/')
|
||||||
|
path.pop_back();
|
||||||
}
|
}
|
||||||
|
|
||||||
static const std::wstring WIllegals {L"<>?\"|"};
|
static const std::wstring WIllegals {L"<>?\"|"};
|
||||||
|
@ -140,6 +142,8 @@ void SanitizePath(std::wstring& path)
|
||||||
}
|
}
|
||||||
return a;
|
return a;
|
||||||
});
|
});
|
||||||
|
while (path.back() == L'/')
|
||||||
|
path.pop_back();
|
||||||
}
|
}
|
||||||
|
|
||||||
static std::mutex PathsMutex;
|
static std::mutex PathsMutex;
|
||||||
|
|
Loading…
Reference in New Issue