소스 검색

* Check to ensure all buffers have the same number of components when merging.

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10214 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
Sha..om 12 년 전
부모
커밋
cc9379b42a
1개의 변경된 파일6개의 추가작업 그리고 0개의 파일을 삭제
  1. 6 0
      engine/src/tools/jme3tools/optimize/GeometryBatchFactory.java

+ 6 - 0
engine/src/tools/jme3tools/optimize/GeometryBatchFactory.java

@@ -131,6 +131,12 @@ public class GeometryBatchFactory {
             }
 
             for (VertexBuffer vb : geom.getMesh().getBufferList().getArray()) {
+                int currentCompsForBuf = compsForBuf[vb.getBufferType().ordinal()];
+                 if (currentCompsForBuf != 0 && currentCompsForBuf != vb.getNumComponents()) {
+                   throw new UnsupportedOperationException("The geometry " + geom + " buffer " + vb.getBufferType() + 
+                                                           " has different number of components than the rest of the meshes " + 
+                                                           "(this: " + vb.getNumComponents() + ", expected: " + currentCompsForBuf + ")");
+                 }
                 compsForBuf[vb.getBufferType().ordinal()] = vb.getNumComponents();
                 formatForBuf[vb.getBufferType().ordinal()] = vb.getFormat();
             }