Do you mean Assimp or jAssimp?
Assimp itself is perfect for my use. My problem has always been that 3D model formats contain way too much useless information that I have to sift through, and all the actually useful information is in a wrong format and extremely hard to decode unless your engine/tool uses the exact same data/object structures as the 3D model format assumes.
Both, I am not doing anything else than translating what Assimp stores in cpp in java, the same data will be stored, either you consider them useful or useless
Example: I don't want to have 30 different light types (or any lights at all), crazy quaternion interpolation bézier parameters, complete scene graphs with interleaved mesh "nodes" and skeleton "nodes" and texture "nodes" with 637 different matrices in each node used for different purposes with no clear explanation for what does what, support for four different animation systems, baked in textures in the model file, and even more shit. I just want a number of meshes grouped by material (1 mesh per material), simple key framed skeleton animation support and that's it.
Unless you've written a rendering system on the level of Blender or Maya or something like that, 75% of all 3D file formats are so much overkill and/or stores the data in a completely different much more complicated way that it'll make you cry yourself to sleep for months after trying (and failing) to implement them (assuming implementing the rendering system itself didn't already break you), and such a rendering system would perform so badly for a game that it'd be completely useless.
I understand your frustation, but I think then you should blame the source, rather than the format itself. Or the program used, if your designer can't custom the export that much.
My worry here is that if Assimp can support all of these completely crazy Blender, Maya and Autodesk that you can fit the entirety of the Toy Story 1-53 movies, their PC games, console ports of said games, music files, autographs and dinosaur fossil discoveries since the medieval ages in them, then Assimp must support essentially everything that every single model format has ever supported. This would essentially mean that Assimp's internal objects are by far the hardest thing ever to port to your own minimal custom format. If I need a team of 10 people and 2 years to extract 5 pieces of information from it, then it doesn't actually solve any real problems. In the end, all you need is a single solid workflow from one 3D modeling software to your game, and everything else can be funneled through that path.
Sure, but that's the challenge when you declare support for over 40 formats
In light of all this, I can not agree that jAssimp is significantly more useful than Assimp in any regard. On Android, the performance/memory usage/load time argument is 10x more important so a custom file format is even more required. This means that (j)Assimp's only real usage is in engine tools/editors running on beefy PCs used to export stuff into your own custom formats, at which point the convenience of having a pure Java implementation is far outweighed by having an automatically generated binding to a maintained project with no manual work/maintenance.
Well, you don't have to agree. Unless your game loads assets in real time, the memory usage (the only one I am sure it'll be worst) is relatively an issue.
Other than that, everything is always relative, I mean, if you need to squeeze to the last bit, you have to go c or cpp. But we do use java (you included I guess) because we repute its advantages valuable. I see the same in doing a pure java porting, but this, of course, is my point of view
EDIT: Please be aware that this is my opinion from an indie game developer perspective. If you are just making a small game for fun where you just want to be able to throw in whatever 3D model format you have lying around........ you'll still be doing 99% of the job of writing your own custom format. No matter what you use, you will be taking the data returned by (j)Assimp when it loads the file and extract the stuff you need into your own custom Model object that you can actually render. From there on, it's a very small step to add binary serialization so you can save that Model object to disk and load it directly again.
Sure, it's clear
My main object is to have support for few formats, such as stl, obj, ply, collada, md2, md5 and fbx. If some user want to have something I may port that as well.
Plus exploiting some cool post-processes to modify the original mesh, without reinventing the wheel.