소스 검색

Check invalid vertex id for bone weight

Kota Iguchi 5 년 전
부모
커밋
6acaaee80f
1개의 변경된 파일4개의 추가작업 그리고 0개의 파일을 삭제
  1. 4 0
      code/PostProcessing/LimitBoneWeightsProcess.cpp

+ 4 - 0
code/PostProcessing/LimitBoneWeightsProcess.cpp

@@ -114,6 +114,10 @@ void LimitBoneWeightsProcess::ProcessMesh(aiMesh* pMesh)
         for (unsigned int w = 0; w < bone->mNumWeights; ++w)
         {
             const aiVertexWeight& vw = bone->mWeights[w];
+
+            if (vertexWeights.size() <= vw.mVertexId)
+                continue;
+
             vertexWeights[vw.mVertexId].push_back(Weight(b, vw.mWeight));
             maxVertexWeights = std::max(maxVertexWeights, vertexWeights[vw.mVertexId].size());
         }