Recently I started playing diablo 3. I quickly was curious on how the models looked and googled a bit. It was easy to find an mpq-extractor, but the app2obj-converters didn't work because the fileformat was changed for "reaper of souls". I googled a bit more and found information on the old fileformat and took a look how much different the new format was.
Animation frames calculated in my experimental engine. For quick experimentation I did the calculations in my engine and exported the result to .obj.
And applying the keyframe to the mesh - also exported to .obj
Next step will be to use the calculated meshes and visualize them inside my engine.
Models can store an optional octree. Here an example for one of the gate-meshes.
Physics-mesh of the above gate-model.
Tristram with nav-cells on the left ( no-go being the ones with an 'x' inside) and with the nav-grid on the right side.
I had a few requests for an exported and copied & pasted the import/export code from my engine and put it into a separate project. So for people who want to experiment, attached below is the converter for the diablo3 reaper of souls .app format (v260). It was compiled with visual studio 2013. If you run it and get a message about a missing msvcrt*.dll, you need to download the visual studio runtime (for free) from the microsoft website.
Note that it only supports basic meshes - so no animations or any other of the above stuff like physicsmeshes or the navigation-meshes.
If you - like me - don't like running executables, I would suggest to create a virtual machine, make a snapshot, run the executable to convert whatever models you want and then just revert to the snapshot.
usage: d3rs_app2obj.exe infile.app [outfile.obj]
No warranty is given - use at your own risk!