I recognized few bugs with the mesh buffers of imported models (e.g. .obj and .meshxml):
- the index buffer, colliding methods need to have an index buffer in the mesh:
java.lang.NullPointerException
at com.jme3.scene.Mesh.getIndexBuffer(Mesh.java:539)
at com.jme3.collision.bih.BIHTree.<init>(BIHTree.java:63)
at com.jme3.collision.bih.BIHTree.<init>(BIHTree.java:93)
at com.jme3.scene.Mesh.createCollisionData(Mesh.java:423)
- TexCoordBuffer
java.lang.NullPointerException
at com.jme3.util.TangentBinormalGenerator.processTriangles(TangentBinormalGenerator.java:98)
at com.jme3.util.TangentBinormalGenerator.generate(TangentBinormalGenerator.java:81)
at com.jme3.util.TangentBinormalGenerator.generate(TangentBinormalGenerator.java:66)
at com.jme3.scene.plugins.OBJLoader.constructMesh(OBJLoader.java:435)
Another exception:
When having a node with a point light and a node within with pointlight:
node
–light
—node //added at runtime
----light
java.lang.NullPointerException
at com.jme3.light.PointLight.computeLastDistance(PointLight.java:25)
at com.jme3.light.LightList.sort(LightList.java:170)
at com.jme3.scene.Geometry.updateWorldTransforms(Geometry.java:177)
at com.jme3.scene.Spatial.updateGeometricState(Spatial.java:541)
at com.jme3.scene.Node.updateGeometricState(Node.java:185)
at com.jme3.scene.Node.updateGeometricState(Node.java:185)
at com.jme3.scene.Node.updateGeometricState(Node.java:185)
at com.jme3.scene.Node.updateGeometricState(Node.java:185)
at model.GameModel.update(GameModel.java:272)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.runLoop(LwjglAbstractDisplay.java:112)
Problem #2 and the last one should be fixed in the new revision.
The BIH collision issue I am working on.