diff --git a/Engine/source/T3D/assets/assetMacroHelpers.h b/Engine/source/T3D/assets/assetMacroHelpers.h index ebe777bf0..28958d4e6 100644 --- a/Engine/source/T3D/assets/assetMacroHelpers.h +++ b/Engine/source/T3D/assets/assetMacroHelpers.h @@ -130,7 +130,7 @@ for (U32 i = 0; i < max; i++)\ #define DEF_ASSET_BINDS_REFACTOR(className,name)\ DefineEngineMethod(className, get##name, StringTableEntry, (), , "get name")\ {\ - return object->get##name##Asset()->getImageFile(); \ + return object->get##name##Asset().notNull() ? object->get##name##Asset()->getImageFile() : ""; \ }\ DefineEngineMethod(className, get##name##Asset, StringTableEntry, (), , assetText(name, asset reference))\ {\ diff --git a/Engine/source/materials/processedMaterial.cpp b/Engine/source/materials/processedMaterial.cpp index ea2a0aa86..3ace0348b 100644 --- a/Engine/source/materials/processedMaterial.cpp +++ b/Engine/source/materials/processedMaterial.cpp @@ -477,9 +477,11 @@ void ProcessedMaterial::_setStageData() inputKey[1] = mMaterial->mRoughnessChan[i]; inputKey[2] = mMaterial->mMetalChan[i]; inputKey[3] = 0; - mStages[i].setTex(MFT_OrmMap, _createCompositeTexture( mMaterial->getAOMapAsset(i)->getImageFile(), mMaterial->getRoughMapAsset(i)->getImageFile(), - mMaterial->getMetalMapAsset(i)->getImageFile(), "", - inputKey, profile)); + mStages[i].setTex(MFT_OrmMap, + _createCompositeTexture(mMaterial->getAOMapAsset(i).notNull() ? mMaterial->getAOMapAsset(i)->getImageFile() : "", + mMaterial->getRoughMapAsset(i).notNull() ? mMaterial->getRoughMapAsset(i)->getImageFile() : "", + mMaterial->getMetalMapAsset(i).notNull() ? mMaterial->getMetalMapAsset(i)->getImageFile() : "", + "", inputKey, profile)); if (!mStages[i].getTex(MFT_OrmMap)) mMaterial->logError("Failed to dynamically create ORM Config map for stage %i", i); }