瀏覽代碼

Merge pull request #2549 from assimp/issue_2548

closes https://github.com/assimp/assimp/issues/2548: check if weight …
Kim Kulling 6 年之前
父節點
當前提交
fed764d2a8
共有 1 個文件被更改,包括 7 次插入3 次删除
  1. 7 3
      code/Collada/ColladaLoader.cpp

+ 7 - 3
code/Collada/ColladaLoader.cpp

@@ -772,10 +772,14 @@ aiMesh* ColladaLoader::CreateMesh( const ColladaParser& pParser, const Collada::
 
             for( size_t b = 0; b < pairCount; ++b, ++iit)
             {
-                size_t jointIndex = iit->first;
-                size_t vertexIndex = iit->second;
 
-                ai_real weight = ReadFloat( weightsAcc, weights, vertexIndex, 0);
+                const size_t jointIndex = iit->first;
+                const size_t vertexIndex = iit->second;                
+                ai_real weight = 1.0f;
+                if (!weights.mValues.empty()) {
+                    weight = ReadFloat(weightsAcc, weights, vertexIndex, 0);
+                }
+                
 
                 // one day I gonna kill that XSI Collada exporter
                 if( weight > 0.0f)