jPCT - a 3d engine for Java > Support

Loader.loadOBJ Problem

(1/1)

AGP:

--- Code: ---System.out.println("\n\n\nWarcraft.loadObject: "+fileName +" Is the mtl null? "+(mtlFile==null));
System.out.println("Is loadOBJ(fileName, mtlFile) null? "+(Loader.loadOBJ(fileName, mtlFile, .5f)==null));

--- End code ---

Produces:

--- Quote ---Warcraft.loadObject: buildings\castle_construction0.obj Is the mtl null? false
Exception in thread "main" java.lang.NullPointerException
        at java.util.Hashtable.put(Unknown Source)
        at com.threed.jpct.Loader.loadOBJ(Loader.java:819)
        at com.threed.jpct.Loader.loadOBJ(Loader.java:508)
        at Warcraft.loadObject(Warcraft.java:250)
        at Worker.moveTowardsDest(Character.java:393)
        at Warcraft.loop(Warcraft.java:320)
        at Warcraft.<init>(Warcraft.java:163)
        at Warcraft.main(Warcraft.java:1058)

--- End quote ---

I've opened the file in Blender and it loads just fine.

EgonOlsen:
mtlFile might be not null, but does the actual file exist? For desktop jPCT, it's best to set the Logger to ON_ERROR_THROW_EXCEPTION, so that it exists early. jPCT-AE already does this, the desktop version just doesn't for compatibility reasons. Maybe that reveals the actual problem.

AGP:
Sorry for taking this long but this baffling bug discouraged me. The file exists.
This:

--- Code: ---System.out.println("\n\n\nWarcraft.loadObject: "+fileName +" Is the mtl null? "+(mtlFile==null) +" Does the file exist? "+new File(fileName).exists());

--- End code ---

Prints:

--- Quote ---Warcraft.loadObject: buildings\castle_construction1.obj Is the mtl null? false Does the file exist? true

--- End quote ---

EgonOlsen:
Can you post the content of the mtl-file? Looks like as if there's no actual material definition in there or it's done in a way that I've never encountered before.

AGP:
As soon as you posted this, I re-exported for the hundredth time and, for reasons passing understanding, it worked. Just to let you know.

Navigation

[0] Message Index

Go to full version