Adjusts some of the loading logic, for guiBitmapCtrl mostly, to not try and load ALL image content upfront during client init, improving load times

This commit is contained in:
Areloch 2024-01-07 23:09:41 -06:00
parent d22b7c7121
commit 829cc2b24a
4 changed files with 18 additions and 3 deletions

View file

@ -81,7 +81,9 @@ void GuiBitmapCtrl::initPersistFields()
docsURL;
addGroup( "Bitmap" );
INITPERSISTFIELD_IMAGEASSET(Bitmap, GuiBitmapCtrl, The bitmap file to display in the control);
addField("Bitmap", TypeImageFilename, Offset(mBitmapName, GuiBitmapCtrl), assetDoc(Bitmap, docs), AbstractClassRep::FIELD_HideInInspectors);
addField("BitmapAsset", TypeImageAssetId, Offset(mBitmapAssetId, GuiBitmapCtrl), assetDoc(Bitmap, asset docs.));
addField("color", TypeColorI, Offset(mColor, GuiBitmapCtrl),"color mul");
addField( "wrap", TypeBool, Offset( mWrap, GuiBitmapCtrl ),
"If true, the bitmap is tiled inside the control rather than stretched to fit." );

View file

@ -297,10 +297,19 @@ BaseMatInstance *MaterialManager::getMeshDebugMatInstance(const LinearColorF &me
void MaterialManager::mapMaterial(const String & textureName, const String & materialName)
{
if (getMapEntry(textureName).isNotEmpty())
String currentMapEntry = getMapEntry(textureName);
if (currentMapEntry.isNotEmpty())
{
if (!textureName.equal("unmapped_mat", String::NoCase))
Con::warnf(ConsoleLogEntry::General, "Warning, overwriting material for: %s", textureName.c_str());
{
SimObject* originalMat;
SimObject* newMat;
if (Sim::findObject(currentMapEntry, originalMat) && Sim::findObject(materialName, newMat))
Con::warnf(ConsoleLogEntry::General, "Warning, overwriting material for: \"%s\" in %s by %s", textureName.c_str(), originalMat->getFilename(), newMat->getFilename());
else
Con::warnf(ConsoleLogEntry::General, "Warning, overwriting material for: %s", textureName.c_str());
}
}
mMaterialMap[String::ToLower(textureName)] = materialName;

View file

@ -147,6 +147,8 @@ SimObject* TamlBinaryReader::parseElement( Stream& stream, const U32 versionId )
if ( pSimObject == NULL )
return NULL;
pSimObject->setFilename(mpTaml->getFilePathBuffer());
// Find Taml callbacks.
TamlCallbacks* pCallbacks = dynamic_cast<TamlCallbacks*>( pSimObject );

View file

@ -119,6 +119,8 @@ SimObject* TamlXmlReader::parseElement( tinyxml2::XMLElement* pXmlElement )
if ( pSimObject == NULL )
return NULL;
pSimObject->setFilename(mpTaml->getFilePathBuffer());
// Find Taml callbacks.
TamlCallbacks* pCallbacks = dynamic_cast<TamlCallbacks*>( pSimObject );