Ver Fonte

fix problems loading 3d models without graphics api

Kolja Strohm há 1 mês atrás
pai
commit
8738e5ab20
1 ficheiros alterados com 10 adições e 4 exclusões
  1. 10 4
      Model3D.cpp

+ 10 - 4
Model3D.cpp

@@ -408,8 +408,11 @@ void Model3DData::buildIndexBuffer()
         memcpy(indexBuffer + current, p->indexList, sizeof(int) * p->indexAnz);
         current += p->indexAnz;
     }
-    dxIndexBuffer->setLength((int)(indexCount * sizeof(int)));
-    dxIndexBuffer->setData(indexBuffer);
+    if (dxIndexBuffer)
+    {
+        dxIndexBuffer->setLength((int)(indexCount * sizeof(int)));
+        dxIndexBuffer->setData(indexBuffer);
+    }
 }
 
 // Setzt den Zeiger auf ein standartmäßig verwendete Skelett
@@ -443,8 +446,11 @@ void Model3DData::setVertecies(Vertex3D* vertexList, int anz)
         if (vertexList[i].pos.z > maxPos.z) maxPos.z = vertexList[i].pos.z;
         vertexList[i].id = i;
     }
-    dxVertexBuffer->setLength((int)(anz * sizeof(Vertex3D)));
-    dxVertexBuffer->setData(vertexList);
+    if (dxVertexBuffer)
+    {
+        dxVertexBuffer->setLength((int)(anz * sizeof(Vertex3D)));
+        dxVertexBuffer->setData(vertexList);
+    }
 }
 
 // Fügt ein Polygon zum Model hinzu