Problem with Kevs 3DS loader in newer xith build..

I now am getting the same exception error, even when I try to run Kevs loader test. Anyone else having problems?


Exception in thread "main" java.lang.IncompatibleClassChangeError
        at org.newdawn.xith3d.threeds.SclTrackProcessor.process(SclTrackProcesso
r.java:85)
        at org.newdawn.xith3d.threeds.TDSLoader.processChunk(TDSLoader.java:130)

        at org.newdawn.xith3d.threeds.TDSLoader.load(TDSLoader.java:97)
        at org.newdawn.xith3d.threeds.TDSLoader.load(TDSLoader.java:88)
        at TDSTest.<init>(TDSTest.java:85)
        at TDSTest.main(TDSTest.java:152)

Here are my 2 posts on another topic until I moved them here when I figured out they were off topic on the other post…

POST 1------------------------------------

Weird, I decided to move my game to the new Xith codebase today and what do I find…

My old code:

character is a BranchGroup
model is a TDSModel


character = (BranchGroup) model.sharedCopy(model);

seems to be returning an error now when I try to use it…


java.lang.IncompatibleClassChangeError
      at org.newdawn.xith3d.threeds.SclTrackProcessor.process(SclTrackProcessor.java:85)
      at org.newdawn.xith3d.threeds.TDSLoader.processChunk(TDSLoader.java:132)
      at org.newdawn.xith3d.threeds.TDSLoader.load(TDSLoader.java:99)
      at org.newdawn.xith3d.threeds.TDSLoader.load(TDSLoader.java:90)

Maybe related???

It also appears that I should now be able to simply use:


character = (BranchGroup) model.sharedCopy();

which is a good thing…

Appears related to the same problem this guy was having here, so its probably just something that changed in the new codebase that I didnt change…

http://www.java-gaming.org/cgi-bin/JGNetForums/YaBB.cgi?board=xith3d;action=display;num=1071038323;start=165#172

POST 2 -------------------------------------------

Doesnt appear related to the sharedgroup problem… It’s having an issue with my model loading with Kevs 3DS loader… Here is my ModelStore class which I use to pull the models…


      private static HashMap modelMap = new HashMap();

      
      public static TDSModel getModel(String name) {

            TDSModel model = (TDSModel) modelMap.get(name);
            
            if (model == null) {
                  try {
                        model = new TDSLoader().load("resources/models/"+name+".3ds",true);
                        
                        modelMap.put(name,model);
                  } catch (Exception e) {
                        e.printStackTrace();
                        System.out.println("Failed to load: "+name);
                        System.exit(0);
                  }
            }
            
            return model;
      }

Let me know if I should move this to another thread now that I know its not based on the sharedCopy issue.

I’ve updated code and ensured that it builds and runs against the latest Xith3D download (not tried CVS version).

Its in the normal place. Hopefully it’ll work for you guys too.

Thanks for the useful information, it made the fixing process simple.

Kev

Working perfectly now!!! Thanks Kev!