소스 검색

fix problems loading 3d models without graphics api

Kolja Strohm 1 개월 전
부모
커밋
8738e5ab20
1개의 변경된 파일10개의 추가작업 그리고 4개의 파일을 삭제
  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