Jump to content

[SOLVED] Forge can't read my OBJ model


myoKun345

Recommended Posts

I made a model in Cinema 4D for my mod, UV mapped it and exported it to OBJ format. I registered it in my model class, and when I start the game, it crashes with the following error:

net.minecraftforge.client.model.ModelFormatException: Error parsing entry ('v -500 -6.319035 6.319', line 5) in file '/assets/majyyka/models/wand.obj' - Incorrect format
at net.minecraftforge.client.model.obj.WavefrontObject.parseVertex(WavefrontObject.java:314)
at net.minecraftforge.client.model.obj.WavefrontObject.loadObjModel(WavefrontObject.java:91)
at net.minecraftforge.client.model.obj.WavefrontObject.<init>(WavefrontObject.java:55)
at net.minecraftforge.client.model.obj.ObjModelLoader.loadInstance(ObjModelLoader.java:28)
at net.minecraftforge.client.model.AdvancedModelLoader.loadModel(AdvancedModelLoader.java:70)
at majyyka.client.ModelWand.<init>(ModelWand.java:23)
at majyyka.client.ItemWandRenderer.<init>(ItemWandRenderer.java:30)
at majyyka.core.proxy.ClientProxy.initRendering(ClientProxy.scala:18)
at majyyka.Majyyka$.init(Majyyka.scala:76)
at majyyka.Majyyka.init(Majyyka.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:540)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
at com.google.common.eventbus.EventBus.post(EventBus.java:267)
at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:194)
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:174)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
at com.google.common.eventbus.EventBus.post(EventBus.java:267)
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:105)
at cpw.mods.fml.common.Loader.initializeMods(Loader.java:696)
at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:231)
at net.minecraft.client.Minecraft.startGame(Minecraft.java:507)
at net.minecraft.client.Minecraft.run(Minecraft.java:806)
at net.minecraft.client.main.Main.main(Main.java:93)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:57)
at net.minecraft.launchwrapper.Launch.main(Launch.java:18)

 

I can import and view the model in 3DS Max, so I don't know what is wrong with my OBJ file and/or Forge.

 

https://github.com/myoKun345/Majyyka/blob/master/resources/assets/majyyka/models/wand.obj

https://github.com/myoKun345/Majyyka/blob/master/majyyka_common/majyyka/client/ModelWand.java

https://github.com/myoKun345/Majyyka/blob/master/majyyka_common/majyyka/client/ItemWandRenderer.java

Link to comment
Share on other sites

I used AdvancedModelLoader (I was sort of half-following Minalien's tutorial for OBJ models; that tutorial is for blocks and this is an item so it is entirely possible I just screwed something up T-T) and I will look at that just in case. I also looked at Pahimar's code for some reference.

Link to comment
Share on other sites

Exporting the obj from 3ds Max results in the crash still happening... but later in the file.

 

net.minecraftforge.client.model.ModelFormatException: Error parsing entry ('f 11/8/11 6/7/12 1/6/12', line 130) in file '/assets/majyyka/models/wand.obj' - Invalid number of points for face (expected 4, found 3)
at net.minecraftforge.client.model.obj.WavefrontObject.parseFace(WavefrontObject.java:396)
at net.minecraftforge.client.model.obj.WavefrontObject.loadObjModel(WavefrontObject.java:121)
at net.minecraftforge.client.model.obj.WavefrontObject.<init>(WavefrontObject.java:55)
at net.minecraftforge.client.model.obj.ObjModelLoader.loadInstance(ObjModelLoader.java:28)
at net.minecraftforge.client.model.AdvancedModelLoader.loadModel(AdvancedModelLoader.java:70)
at majyyka.client.ModelWand.<init>(ModelWand.java:23)
at majyyka.client.ItemWandRenderer.<init>(ItemWandRenderer.java:30)
at majyyka.core.proxy.ClientProxy.initRendering(ClientProxy.scala:18)
at majyyka.Majyyka$.init(Majyyka.scala:76)
at majyyka.Majyyka.init(Majyyka.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:540)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
at com.google.common.eventbus.EventBus.post(EventBus.java:267)
at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:194)
at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:174)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74)
at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296)
at com.google.common.eventbus.EventBus.post(EventBus.java:267)
at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:105)
at cpw.mods.fml.common.Loader.initializeMods(Loader.java:696)
at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:231)
at net.minecraft.client.Minecraft.startGame(Minecraft.java:507)
at net.minecraft.client.Minecraft.run(Minecraft.java:806)
at net.minecraft.client.main.Main.main(Main.java:93)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:57)
at net.minecraft.launchwrapper.Launch.main(Launch.java:18)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.