WaveFrontReader: Fixed use of Tr material property

This commit is contained in:
Chuck Walbourn 2019-01-09 13:53:53 -08:00
Родитель 9590f90364
Коммит 73522f621a
1 изменённых файлов: 11 добавлений и 3 удалений

Просмотреть файл

@ -448,11 +448,19 @@ public:
InFile >> r >> g >> b; InFile >> r >> g >> b;
curMaterial->vSpecular = XMFLOAT3(r, g, b); curMaterial->vSpecular = XMFLOAT3(r, g, b);
} }
else if (0 == wcscmp(strCommand.c_str(), L"d") || else if (0 == wcscmp(strCommand.c_str(), L"d"))
0 == wcscmp(strCommand.c_str(), L"Tr"))
{ {
// Alpha // Alpha
InFile >> curMaterial->fAlpha; float alpha;
InFile >> alpha;
curMaterial->fAlpha = std::min(1.f, std::max(0.f, alpha));
}
else if (0 == wcscmp(strCommand.c_str(), L"Tr"))
{
// Transparency (inverse of alpha)
float invAlpha;
InFile >> invAlpha;
curMaterial->fAlpha = std::min(1.f, std::max(0.f, 1.f - invAlpha));
} }
else if (0 == wcscmp(strCommand.c_str(), L"Ns")) else if (0 == wcscmp(strCommand.c_str(), L"Ns"))
{ {