Sign in to follow this  
Warlander

WOM Converter - tool for exporting models to WOM

Recommended Posts

WOM Converter

Tool for exporting models to WOM

 

WOM Converter is a tool allowing conversion of Assimp-compatible formats (list here) to WOM. It was tested with dae (Collada) models and fbx, but should work with most or all listed formats as well.

Benefits of WOM format are smaller file size and much faster loading. In addition, it's the only model format currently supported by DeedPlanner. ;)

 

Main target of this tool are Wurm Unlimited modders who can convert models to most optimal form now, but binaries are published for everyone interested to use. Running program in command line without parameters will display help.

 

WOM Converter repository

https://github.com/codeclubab/WOM-Converter

WOM Converter releases

https://github.com/codeclubab/WOM-Converter/releases

 

Currently the program features:

  • Command line interface
  • Ability to convert Assimp-compatible formats to WOM
  • Dev mode toggle-able with -devfilechooser parameter, allowing to quickly test the program by selecting a file with file chooser

 

As of now converter works correctly for static models without animations, support for all models will be added soon. In addition, GUI version of the program and support of converting WOM models back to Collada/other Assimp-compatible formats is also planned.

  • Like 7

Share this post


Link to post
Share on other sites
1 hour ago, Warlander said:

support for all models will be added soon. In addition, GUI version of the program and support of converting WOM models back to Collada/other Assimp-compatible formats is also planned.

Thank you VERY MUCH! ?

Share this post


Link to post
Share on other sites

oh thanks...holding breath for that animated models version.

 

Share this post


Link to post
Share on other sites
4 hours ago, Cyndargua said:

oh thanks...holding breath for that animated models version.

 

 

I'm working on it... Exactly right now. :)

I'm hoping to release it by tomorrow.

  • Like 1

Share this post


Link to post
Share on other sites
On ‎6‎/‎22‎/‎2018 at 6:20 AM, Warlander said:

 

I'm working on it... Exactly right now. :)

I'm hoping to release it by tomorrow.

just curious if this is still being worked on? pretty sure tomorrow was last month ;)

Share this post


Link to post
Share on other sites

with this wom converter tool will there way to make items that we create, for example chairs usable? or will that require coding??

 

thanks

Share this post


Link to post
Share on other sites
25 minutes ago, ozmods said:

with this wom converter tool will there way to make items that we create, for example chairs usable? or will that require coding??

 

thanks

 

This is just a converter, it's output can be used as foundation for a new item, but adding it to the game requires additional steps. (exactly the same ones as in case of Collada models)

Share this post


Link to post
Share on other sites
On 8/15/2018 at 1:34 PM, Cuddles said:

just curious if this is still being worked on? pretty sure tomorrow was last month ;)

 

Ooops, didn't noticed this post until I checked my email. :)

 

Currently it's mostly completed but stalled, there is a problem with exporting nulls that are vital for many Wurm models. (essentially all mounts, vehicles, characters and such).

  • Like 1

Share this post


Link to post
Share on other sites

Keep up the great work Warlander, definitely looking forward to the finished product!

Share this post


Link to post
Share on other sites

My breath is bated, thank you Warlander

 

This is very much needed :)

Edited by Ignacius

Share this post


Link to post
Share on other sites
Just now, Ignacius said:

Is there any update on this? Can the modding community help in some way? @Warlander

 

Exact issue that stalled development of this tool is lack of possibility to import and read null bones using Assimp, the issue is explained in this GitHub issue: https://github.com/assimp/assimp/issues/2054

It goes a bit deeper than just Assimp ignoring nulls - there is assumption that every bone is linked with any mesh, but bones not attached to any mesh are very important in case of Wurm.

 

That being said, all models that doesn't require nulls and don't have animations will export properly using this tool right now.

Share this post


Link to post
Share on other sites

What problem is this?

The exporter seems to work sometimes, sometimes not.

 

Converting file: centaur_fem5.obj, output directory: E:\Games\Wurm\Centaur2\centaur_female
Mesh name:      Centaur_Centaur_Material
Has tangents:   true
Has binormals:  true
Has colors:     false
Vertices:       8564
Faces:          5537
Triangles:      16611
Exception in Application start method
java.lang.reflect.InvocationTargetException
        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.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:389)
        at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:328)
        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 sun.launcher.LauncherHelper$FXHelper.main(Unknown Source)
Caused by: java.lang.RuntimeException: Exception in Application start method
        at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917)
        at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$1(LauncherImpl.java:182)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IndexOutOfBoundsException
        at java.nio.Buffer.checkIndex(Unknown Source)
        at java.nio.DirectIntBufferU.get(Unknown Source)
        at com.wurmonline.womconverter.converters.AssimpToWOMConverter.writeMesh(AssimpToWOMConverter.java:153)
        at com.wurmonline.womconverter.converters.AssimpToWOMConverter.convert(AssimpToWOMConverter.java:66)
        at com.wurmonline.womconverter.Main.start(Main.java:121)
        at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$8(LauncherImpl.java:863)
        at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$7(PlatformImpl.java:326)
        at com.sun.javafx.application.PlatformImpl.lambda$null$5(PlatformImpl.java:295)
        at java.security.AccessController.doPrivileged(Native Method)
        at com.sun.javafx.application.PlatformImpl.lambda$runLater$6(PlatformImpl.java:294)
        at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
        at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
        at com.sun.glass.ui.win.WinApplication.lambda$null$4(WinApplication.java:186)
        ... 1 more
Exception running application com.wurmonline.womconverter.Main

 

Share this post


Link to post
Share on other sites

Only static models can be converted using this tool - any models with animations won't be exported or will be exported with errors.

Share this post


Link to post
Share on other sites

Wierd.

The model has no animation.

Using blender, no keyframes. Exporting as obj and then wom converter.

Share this post


Link to post
Share on other sites

If I want to export an animated mesh to use in Wurm, what program should I use?

Share this post


Link to post
Share on other sites

I made some tweaks to this program:

  • added stripping of windows paths from textures (original only stripped unix-style paths with "/")
  • added -forcemats <file>
    • File should contain lines like
      farm.jpg=farmwurm
    • Will cause all materials that use "farm.jpg" texture to be renamed to "farmwurm"
  • added -matreport <file>
    • Will generate a report on which materials/textures are used and write it to file
      4a planter bed black mushroom young untended.obj
      - shroomMat1 -> black_mushroom.png
      - dirtwurm -> dirt.dds
      - Soil -> dirt.jpg
      - oakplank -> Plank_oak.dds

Makes dealing with texture overrides in mappings much easier 😛

 

https://github.com/bdew-wurm/WOM-Converter/releases/tag/bdew-1

 

Can PR to the official repository if there's interest.

  • Like 2
  • Cat 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this