I’m working on a project (my master thesis) where i have to create an app that can
load objects imported from MSC Nastran (cute app originally developed for NASA) [it should create them by parsing a text file, extracting points coordinations, creating polygons and finaly shapes]
displays those objects
let user view and manipulate them (rotation, translation etc.)
let user pick one of them (and its vertices)
do some operations using that object vertices (like creating new vertices and shapes).
Pretty much that’s it. Piece of cake.
It’s like an ultra mini version of 3Ds Max.
I’ve already done a little version of that app (so I could show something to my promoter xD).
I’ve started (week ago) by using Sun Java 3D, but I found today thats it’s dead… (lol, I know) and I’m pretty sure I can do it in Sun Java 3D but I don’t wan’t to waste my time on learning something that is already dead and has no future.
And my question is what Java 3D engine (if any) should I use to create this application?
Should I stick with Sun’s Java 3D?
If i choose an engine and my promoter ask me can this app be developed further by someone else and I’ll be like “err JMonkey is pretty much beta and there’s no assuring it’s backward compatibile and…” he will kill me. Please help.
additional info: I have 2 weeks deadline and some experience in java (like intermediate)
Below are some screens of my pre-alpha-test-to-delight-promoter version so You have an idea what I’m talking about.
jme might not be the best for this, but certainly its doable in it :). I don’t have any first hand experience with any others, so can’t really comment. All i know is jme rocks! :D. To your “boss” - JME has proven to be a good platform, look at all the games/applications that have already been developed. JME has a very active and growing community with a lot of contributors. There is also a book released soon. Learning curve is quite short, due to the engine doing a lot for you, as well as many good tutorials, and active forum posters.
I went to the Ford dealer and asked him which car I should buy. “A Ford, of course”, he said.
I went to the BMW dealer and asked him which car I should buy. “A BMW, of course”, he said.
On the one hand, you have Java3D which I thought wasn’t being maintained anymore. On the other hand, you have a cutting edge engine like JME that has regular stable (read:safe) updates… even though it is in beta. It’s also open source. I know there was an open source copy of Java3D (I forget the name) but I don’t know if they ever made Java3D properly open source. Honestly, I found Java3D so cumbersome that I never played with it long anyway.
If backwards compatibility and stability really scare you (and I don’t think they are that scary in this case) then you can always fork the source code and maintain your own version locally. You could even wait to do that only if it becomes a problem.
There’s absolutely no reason that jME couldn’t be used for this. I’m currently three years into a project started in academia using jMonkeyEngine.
As far as “backward compatibility” goes, you need to define the scope of compatibility required. There are two major paths if you’re looking at Java development in 3D, going the low-level route of LWJGL or JOGL or going for more of an “engine” in jME or Ardor.
The changes that have been happening in the API have been well-documented with each iteration and at this point have been quite minimal. The documentation is there on the wiki, there is a book coming out, and there is an extremely active community around it. The Core Team is diverse and has directives beyond improvements to the code itself, such as documentation, PR, website, etc.
I agree with you about not wanting to work with something that’s dead… it looks like you’ve stumbled on an engine that certainly is not
I that right that you have less than 1,5 weeks left? That is really a short time. If it is really so serious as you stated, than you might consider to stick to what you know and what you have. To get into something new in such a short time is, in my opinion, a high risk. It could break your deadline. Certainly java3d is dead and jme is really good and alive but in this case you have to decide carefully if it is the right way for you.