I started game development with GLUT/OpenGL in C++. All was pretty good although I had no experience at all. But I found development a bit messy.. I used L3DS (http://www.levp.de/3d/) to load 3DS models which I modeled using Anim8or (http://www.anim8or.com/).. Not fancy, but it worked.Well, after having resolved the 50 welcome bugs for n00bs I had a running game prototype.. I even had sound with Fmod (http://www.fmod.org/)... All couldn't be better.. until I tried to compile on Windows... (I was working under linux).. And then the problems began... GLUT versions weren't synchro between Linux & Windows.. Lots of portability issues.. One of my freinds tried to compile on mac... And it was even worse, L3DS didn't work at all and all he got was a black screen and a crashed mac. Then I decided to go SDL, and after having issued 100 SDL parachute errors and figured out that C++ is really not as good as gamedev.net says.

Then I began to look for a Java solution.. I had tried Tribal Trouble (http://tribaltrouble.com) and it seemed to me pretty, fast, and portable.. So I decided to go the way they had gone.. I downloaded LWJGL but unfortunately there was no test to run easily on linux, and as I had very little knowledge I didn't went very far. I then e-mailed Tribal Trouble development team, which answered I could also try Java3D or Xith3D which were also pretty good. Java3D was dead and didn't have any linux release so I downloaded Xith3D, followed the Installation Guide, then the Getting Started Guide and started coding again my game.. And it was fine.

Some weeks after the news arrived Java3D was resurrected.. Although (as you can have seen) I'm a lib-changing guy I didn't wanted to try the new Java3D... Then I heard about jME.. I even ran some demos which were beautiful, but Xith3D was fitting my needs. So I just stick with it.

Actually I'm fighting with my artists to have a _working_ graphic pipeline.. To say you all :

MD2 isn't precise, and Blender export don't work really. And it doesn't support bones

OBJ is precise, and Blender export works, and I can import it in Xith but it doesn't support bones

Cal3D cannot be imported currently in Xith3D

I have regularly proposed my ideas of merging libs or at least merging the efforts, improving collaboration.. each time some gurus had really good reasons not to participate to that..

Now it's ridiculous how the competition has become between Xith3D and jME.. "Oh I can get 10 more FPS with jME, let's take it", "Oh Xith can support Collada, let's go Xith3D !" Don't tell me the usage of jME and Xith are different it's just political or personal opinion that make you chose one or another..

And now there are duplicated effort.. Each one is going to write its own loaders and all just because there are many separate libs that don't contain every feature they need.

Collaboration is good. What can be shared between Xith3D and jME is, IMHO :- Culling methods, and everything in general that can increase FPS- Loaders : MD5, Collada, Cal3D and others if there are volunteers..

This is the strict minimum if the community won't go further which would be creating a unique library, not formally a merger but a common effort.

I agree collaboration can be a very good thing. Particularly from the Xith front, but from the jME perspective what does Xith have that jME doesn't? Within the next couple months jME will have extremely powerful and full-featured Collada support as jME is moving very much that direction. jME also supports dozens of other major features that Xith just doesn't have. Granted it's been a while since I looked at Xith, but from my previous experience with it the forums were not responded to frequently, noobs questions weren't answered, features were sparse, structure was far too much like Java3D (which in my opinion sucks), and it's a slower engine than jME. Perhaps these aspects have changed since I was there last, but perhaps you Xith people need to seriously look at what jME has and just realize that we've got everything already and just join us. :-p

There's a reason you don't see many jME developers around here. It's because we have an extremely active forum that gets answered very fast and a great community.

I agree collaboration can be a very good thing. Particularly from the Xith front, but from the jME perspective what does Xith have that jME doesn't? Within the next couple months jME will have extremely powerful and full-featured Collada support as jME is moving very much that direction. jME also supports dozens of other major features that Xith just doesn't have. Granted it's been a while since I looked at Xith, but from my previous experience with it the forums were not responded to frequently, noobs questions weren't answered, features were sparse, structure was far too much like Java3D (which in my opinion sucks), and it's a slower engine than jME. Perhaps these aspects have changed since I was there last, but perhaps you Xith people need to seriously look at what jME has and just realize that we've got everything already and just join us. :-p

There's a reason you don't see many jME developers around here. It's because we have an extremely active forum that gets answered very fast and a great community.

Just the opinion of a biased developer, take it at what it's worth.

-Matt Hicks

Okay so I'll just answer completely uselessly at some of your points (as i agree more or less with you on your last point) :- "What does Xith has that jME hasn't ?"- JSR-231 support. Hey, this isn't a small thing. It adds really much compatibility. However, I agree that a port of the LWJGL render of jME wouldn't be a too big work (assuming jME is well-designed).

- "The forums were not answered frequently"- It was probably true when it was in heavy development process, as Dave Yazel probably hadn't the time to answer to everything. But now I can tell you it's all the contrary. Some people like Arne, Croft, William, some others and myself are looking very carefully that n00bs don't get abandoned.

- "Perhaps these aspects have changed since I was there last, but perhaps you Xith people need to seriously look at what jME has and just realize that we've got everything already and just join us. :-p"- Don't you know it's just what I thought when I took a look at jME recently (about 1 month).. The fact is, I didn't found a complete, friendly documentation for jME as the Xith3D getting started guide... And I told myself I wasn't gonna change of graphic lib one more time. BUT if it's for the sake of non-duplication of effort I'll be pleased to declare jME officially the future of Xith make sure that jME support EVERY Xith features (hey we have users to satisfy ^^) and develop jME as actively as I'm contributing to Xith (not that much but nevertheless valuable).

First of all i'm developing with JME for the last 1 and 1/2 years. I played a little with Xith and i found it way to complex from jme, but that is just my personal opinion. Now that mark and renanse are working at NCsoft there is much activity in jme development and JME's forums are pretty helpful. I agree with MagicSparks proposal for collaboration since there are many things that can be done in an engine-indepedent way but i disagree with the option of discontinuing xith. Perhaps the best way would be to start a new project based on existing knowledge and more game oriented.

And if that's not enough you can always look at the dozens of tests that come with jME that show you how to do practically everything jME supports from bloom effects to shadows to cloth texturing to model loading to multi-state games to continuous terrain to even extremely simple tasks like just creating a game.

If you think there's not enough "getting started" information for jME either you're looking for something completely different or you haven't looked close enough. And if that's not enough you can always post in the forums and rarely does a noob post stagnate for more than an hour before a response is received.

The biggest aspect to me is the extremely well defined scene-graph which Xith (in my opinion) just doesn't have.

Sample applications * Game system allows for maintence of the main game loop * SimpleGame provides a quick entry point for proof of concepts * GameState provides ability to change game states (menu, game, credits, etc)We don't have them but I don't find it useful

Bounding System * All geometry can be enclosed in a bounding system. * Boxes and Spheres.We have it

Curves * Bezier curves can be used for node controlling.Being implemented by Croft

Bezier Mesh * For smooth curved surfaces.Being implemented by Croft

Effects * Transition from on scene to another.Easy to do * Lens Flare.Easy to do * Particle System.Done by jcd * Screen tinting.Huh ? Do they mean having a colored semi-transparent quad in foregroud node ? * Vertex and Fragment Program Support.We have it * Cloth Simulation.Done by jcd.

You don't find GameStates useful? You never need to switch between a menu to game (or vice-versa) or perhaps provide multiple games inside one application context?

That is not a complete list of features jME has either. I believe it's been a while since that has been updated or a few things were just left out. However, by your own admission there are several items jME has that Xith does not. The only thing you have mentioned thus far that Xith has above jME is JSR-231 (and that is being implemented). I would say based on this conversation I've got quite a bit of assurance that I'm using the better engine. Even beyond that jME performs much better than Xith in every test I've seen. jME still can't keep up with Java3D on some things, but I don't believe we're too far off on exceeding them in performance as well. jME blows everyone away in features alone. Add community support and performance and I'm happy where I'm sitting.

The point of this conversation was to discuss the feasability of collaboration between jME and Xith but I still have yet to see anything but JOGL support that Xith can provide to jME....perhaps I wasn't reading close enough?

DP, that's the most tactful reply I think I've ever seen you post......impressive. :-p

Swing in 3D, yeah and it works perfectly (we just have some issues with windowed mode on linux & mac because of the size of the border window so it looks a bit difform but you just have to call the calcPlate() function after window init to fix it !).

I apologize if this is taken the wrong way...not trying to continue the war either.....but.... :-p

Collada support - we've actually already got commercial quality collada support, we're just waiting for NCSoft to give the go-ahead to donate it back to the community)Integrated Swing - Irrisor has done a phenominal job on the Swing aspects and though there may be quite a lot that could be gained from collaboration concept-wise I can't imagine how any code collaboration could really occur here since it's very explicit to the actual implementing engine isn't it?

I've seen an MD5 exporter for Blender somewhere....if I can find it I'll post it.

Integrated Swing - Irrisor has done a phenominal job on the Swing aspects and though there may be quite a lot that could be gained from collaboration concept-wise I can't imagine how any code collaboration could really occur here since it's very explicit to the actual implementing engine isn't it?

Maybe. But I think it's a bit late to talk with David Yazel (which implemented the original code, IIRC).

Your choice if you want to depend NCSoft forever. That may not be problem for you. And I was wrong, I though it "was going to be implemented".

Depend on NCSoft forever? Once it is contributed back it then becomes the communities responsibility to maintain so NCSoft contributes great commercial support for Collada and then we can make any updates and changes necessary. I hardly believe that classifies as "depend NCSoft forever". :-p

I know it may seem that I'm opposed to the idea of collaboration, but I'm definitely not. I am just honestly trying to determine what Xith has that can benefit jME. It sounds like we might be able to gain a lot from taking a look at how the Swing integration is done, but it seems hard to find a lot of common aspects that can be collaborated on. I would say model loading is a very good idea to provide engine-agnostic support in, but how do you go about that? Define one common model type like Collada or some binary format and standardize the implementation in both engines to simply support that one model and then collaborate on all the other model loaders to convert to that format?

Your choice if you want to depend NCSoft forever. That may not be problem for you. And I was wrong, I though it "was going to be implemented".

Depend on NCSoft forever? Once it is contributed back it then becomes the communities responsibility to maintain so NCSoft contributes great commercial support for Collada and then we can make any updates and changes necessary. I hardly believe that classifies as "depend NCSoft forever". :-p

I know it may seem that I'm opposed to the idea of collaboration, but I'm definitely not. I am just honestly trying to determine what Xith has that can benefit jME. It sounds like we might be able to gain a lot from taking a look at how the Swing integration is done, but it seems hard to find a lot of common aspects that can be collaborated on. I would say model loading is a very good idea to provide engine-agnostic support in, but how do you go about that? Define one common model type like Collada or some binary format and standardize the implementation in both engines to simply support that one model and then collaborate on all the other model loaders to convert to that format?

-Matt Hicks

Croft actually did that with Xith3D - Collada. http://earth.whoola.com:8080/space/collada/You see, we found actually *one* things jME doesn't have (although it's not my goal and if you had it since long, then, well, I'm not gonna look for another )

Correct me if I'm wrong here, but weren't you originally trying to determine if jME was better than Xith and if it would be worthwhile to switch? Now you're grasping at straws trying to find a feature jME doesn't have and Xith does? If you want to stick with Xith I understand, but by your own admission jME has a lot more than Xith does. :-p

That's looks like a really promising converter there! Thanks for the linkage.

thanks - just looked into into but couldn't get SwingDemo to show any GUI (only the spinning cude).... where are the xith forums? Also on xith.org? If yes - do you know when it will be accessible again?

Correct me if I'm wrong here, but weren't you originally trying to determine if jME was better than Xith and if it would be worthwhile to switch? Now you're grasping at straws trying to find a feature jME doesn't have and Xith does? If you want to stick with Xith I understand, but by your own admission jME has a lot more than Xith does. :-p

Please be more wise here. I grew up a bit but I may still become agressive ^^ That was complete irony.. And a Xith3D folk said : "I don't like seeing our work reduced to a small subset".Maybe the missing features of Xith3D were very hard to implement in jME (due to a "hazardous" architecture how easy the war is) but I don't think

That's looks like a really promising converter there! Thanks for the linkage.

Now the best would be to have a common loader architecture (my apologies to all the guys who thinks discussion about arch. is just noise) and then this converter would also become common. Does jME have a binary format or something like that ? I heard about that. Do you have more details ? If not I suggest to use complete open-source formats like Collada (as croft did) or Cal3D (which has a better Blender3D support).

thanks BlueSky - just looked into the xith swing-gui stuff but couldn't get SwingDemo to show any GUI (only the spinning cude).... where are the xith forums? Also on xith.org? If yes - do you know when it will be accessible again?

jME has both an XML and Binary format for models. The binary format is what everything should ideally be converted to before using as it is obviously much better all around to be loading a binary format than an XML format. I believe a lot of this is being re-worked by Mojo and Renanse and I believe a lot has already been contributed back, I think we're only just waiting on all the Collada support.

It looks like that model converter stuff is missing the majority of features from Collada?

jME has both an XML and Binary format for models. The binary format is what everything should ideally be converted to before using as it is obviously much better all around to be loading a binary format than an XML format. I believe a lot of this is being re-worked by Mojo and Renanse and I believe a lot has already been contributed back, I think we're only just waiting on all the Collada support.

Yeah ok. Would it be technically feasible to add support to Xith3D for this format ? I mean, does it have anything really jME-specific ?

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org