Skip to content

Commit dfd0189

Browse files
committed
Addendum #3 to d413e81: Fix additional cause of 'white textures'
1 parent ff9bb49 commit dfd0189

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

Client/game_sa/CRenderWareSA.TextureReplacing.cpp

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3258,21 +3258,26 @@ CModelTexturesInfo* CRenderWareSA::GetModelTexturesInfo(unsigned short usModelId
32583258
bool bNeedVehicleFallback = false;
32593259
for (SReplacementTextures* pReplacement : info.usedByReplacements)
32603260
{
3261-
if (pReplacement)
3262-
originalUsed.push_back(pReplacement);
3261+
if (!pReplacement)
3262+
continue;
3263+
3264+
originalUsed.push_back(pReplacement);
32633265
std::vector<unsigned short> modelIds;
32643266
for (unsigned short modelId : pReplacement->usedInModelIds)
32653267
{
32663268
auto& pCachedModInfo = modelInfoCache[modelId];
32673269
if (!pCachedModInfo)
32683270
pCachedModInfo = static_cast<CModelInfoSA*>(pGame->GetModelInfo(modelId));
3269-
if (!pCachedModInfo || !pCachedModInfo->GetRwObject())
3271+
if (!pCachedModInfo)
32703272
continue;
3273+
32713274
if (pCachedModInfo->GetTextureDictionaryID() == usTxdId)
32723275
{
3273-
modelIds.push_back(modelId);
32743276
if (!bNeedVehicleFallback && ShouldUseVehicleTxdFallback(modelId))
32753277
bNeedVehicleFallback = true;
3278+
3279+
if (pCachedModInfo->GetRwObject())
3280+
modelIds.push_back(modelId);
32763281
}
32773282
}
32783283
if (!pReplacement->textures.empty() && !modelIds.empty())

0 commit comments

Comments
 (0)