mirror of
https://github.com/OpenMW/openmw.git
synced 2025-02-28 17:09:41 +00:00
Deduplicate some version checks, avoid resizing twice
This commit is contained in:
parent
b7c69d109f
commit
145ce8f924
1 changed files with 5 additions and 8 deletions
|
@ -416,13 +416,14 @@ namespace Nif
|
|||
nif->read(numStrips);
|
||||
nif->read(bonesPerVertex);
|
||||
nif->readVector(mBones, numBones);
|
||||
if (nif->getVersion() < NIFStream::generateVersion(10, 1, 0, 0) || nif->get<bool>())
|
||||
bool hasPresenceFlags = nif->getVersion() >= NIFStream::generateVersion(10, 1, 0, 0);
|
||||
if (!hasPresenceFlags || nif->get<bool>())
|
||||
nif->readVector(mVertexMap, numVertices);
|
||||
if (nif->getVersion() < NIFStream::generateVersion(10, 1, 0, 0) || nif->get<bool>())
|
||||
if (!hasPresenceFlags || nif->get<bool>())
|
||||
nif->readVector(mWeights, numVertices * bonesPerVertex);
|
||||
std::vector<unsigned short> stripLengths;
|
||||
nif->readVector(stripLengths, numStrips);
|
||||
if (nif->getVersion() < NIFStream::generateVersion(10, 1, 0, 0) || nif->get<bool>())
|
||||
if (!hasPresenceFlags || nif->get<bool>())
|
||||
{
|
||||
if (numStrips)
|
||||
{
|
||||
|
@ -509,12 +510,8 @@ namespace Nif
|
|||
|
||||
uint32_t numEntries;
|
||||
nif->read(numEntries);
|
||||
|
||||
// Fill the entire palette with black even if there isn't enough entries.
|
||||
mColors.resize(256);
|
||||
if (numEntries > 256)
|
||||
mColors.resize(numEntries);
|
||||
|
||||
mColors.resize(numEntries > 256 ? numEntries : 256);
|
||||
for (uint32_t i = 0; i < numEntries; i++)
|
||||
{
|
||||
nif->read(mColors[i]);
|
||||
|
|
Loading…
Reference in a new issue