asset load flow work

add reloading state to asset tracking,
convert most asset.isnull() checks on over to skipping out unless the errcode is ::Ok, or ::UsingFallback
add more errstriongcodes to hook up
skip load<type> execution if the asset loaded state is ::Ok
This commit is contained in:
AzaezelX 2023-10-08 13:19:43 -05:00
parent 753cbe32d9
commit b710a309bd
23 changed files with 177 additions and 35 deletions

View file

@ -106,6 +106,14 @@ ConsoleSetType(TypeSoundAssetId)
Con::warnf("(TypeAssetId) - Cannot set multiple args to a single asset.");
}
const String SoundAsset::mErrCodeStrings[] =
{
"BadProfile",
"BadDescription",
"BadBufferData",
"UnKnown"
};
//-----------------------------------------------------------------------------
SoundAsset::SoundAsset()
@ -215,6 +223,7 @@ void SoundAsset::onAssetRefresh(void)
bool SoundAsset::loadSound()
{
if (mLoadedState == AssetErrCode::Ok) return true;
if (mSoundPath)
{
if (!Torque::FS::IsFile(mSoundPath))