OBJ Loader is broken

Hi… I have Exception with nightly JME.



Code:

[java] // Load Model

DesktopAssetManager dsk = (DesktopAssetManager) assetManager;

ModelKey bk = new ModelKey(name);

Spatial tmpSpatial = assetManager.loadModel(bk);[/java]



Exception:

INFO LwjglRenderer 21:24:18 Uniform m_VertexColor is not declared in shader [ShaderSource[name=Common/MatDefs/Misc/Unshaded.vert, defines, type=Vertex], ShaderSource[name=Common/MatDefs/Misc/Unshaded.frag, defines, type=Fragment]].

WARNING OBJLoader 21:24:27 Cannot locate fs_asteroid_02.mtl for model fs_asteroid_02.obj

WARNING OBJLoader 21:24:27 Unknown statement in OBJ! o

Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: -1

at java.util.ArrayList.get(ArrayList.java:324)

at com.jme3.scene.plugins.OBJLoader.readFace(OBJLoader.java:260)

at com.jme3.scene.plugins.OBJLoader.readLine(OBJLoader.java:366)

at com.jme3.scene.plugins.OBJLoader.load(OBJLoader.java:565)

at com.jme3.asset.DesktopAssetManager.loadAsset(DesktopAssetManager.java:273)

at com.jme3.asset.DesktopAssetManager.loadModel(DesktopAssetManager.java:408)

at bigboots.editor.BBSceneGrid.loadExternalModel(BBSceneGrid.java:181)

at bigboots.editor.BBModelViewer.loadModelFromFile(BBModelViewer.java:261)

at bigboots.editor.BBModelViewer.access$500(BBModelViewer.java:56)

at bigboots.editor.BBModelViewer$3.actionPerformed(BBModelViewer.java:154)

at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)

at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)

at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)

at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)

at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)

at java.awt.Component.processMouseEvent(Component.java:6288)

at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)

at java.awt.Component.processEvent(Component.java:6053)

at java.awt.Container.processEvent(Container.java:2041)

at java.awt.Component.dispatchEventImpl(Component.java:4651)

at java.awt.Container.dispatchEventImpl(Container.java:2099)

at java.awt.Component.dispatchEvent(Component.java:4481)

at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)

at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)

at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)

at java.awt.Container.dispatchEventImpl(Container.java:2085)

at java.awt.Window.dispatchEventImpl(Window.java:2478)

at java.awt.Component.dispatchEvent(Component.java:4481)

at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643)

at java.awt.EventQueue.access$000(EventQueue.java:84)

at java.awt.EventQueue$1.run(EventQueue.java:602)

at java.awt.EventQueue$1.run(EventQueue.java:600)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)

at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)

at java.awt.EventQueue$2.run(EventQueue.java:616)

at java.awt.EventQueue$2.run(EventQueue.java:614)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:613)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

@Momoko_Fan just put up a fix yesterday for a whitespace issue when reading faces out of files coming from certain tools (apparently MakeHuman is one such tool). That would probably be a good place to start :slight_smile:

Sorry I had a fix locally but forgot to commit it. Should be okay now.

ok, cool!