My documentation "issue"

Ok… I've been coding my own game engines and games using lwjgl for a couple years now, and I keep coming back to having to make the same decision: should I just use the jMonkeyEngine? But the same thing keeps me from seriously using it. Documentation. I just can't seem to figure out all the objects and methods and when to use them. I've followed some of the partially completed tutorials, but they end short of the information I need to actually make a full game (i.e., collision detection and such). Am I missing some great repository of documentation? Is there a completed users guide somewhere?



I love what the jMonkeyEngine is capable of, and I really don't like reinventing the wheel. I just need someone to explain how to use all the little pieces of the jME wheel before I can switch over.  :?

I guess you'll have to ask yourself… what takes more time and what's more fun? Writing those systems yourself or figuring out how the jME ones work?



If I look at how long it takes for many new users to find out (mostly on their own) how collision detection and such works with jME, they learn it reasonably fast. Sure it would be nicer if there was more documentation and more tutorials… but unfortunatly these don't write themselves :frowning:

llama said:

I guess you'll have to ask yourself.. what takes more time and what's more fun? Writing those systems yourself or figuring out how the jME ones work?

If I look at how long it takes for many new users to find out (mostly on their own) how collision detection and such works with jME, they learn it reasonably fast. Sure it would be nicer if there was more documentation and more tutorials.. but unfortunatly these don't write themselves :(


is that a subtle hint? :D

elias4444, the best way to find out what stuff does is to just sit down and mess with everything you see. It takes alot of time but keeping yourself busy with jME and exploring everything is the best way to understand it. Try to tweak values, comment out methods, write some small samples for yourself (not complete games, just simple stuff) and you'll learn it rapidly. I started with jME about 4-5 weeks ago but have spend roughly 40 hours on it. I was entirely new to scene graphs, particle managers and shader effects. Just toying arround with it makes you learn stuff more than you might think.

Ofcourse reading essays/articles about particular effects is also very educational. If I had to chose between jME and my own engine i'd stick with jME. Writing your own engine is one thing, but making it efficient is another. Personally I think it takes a community like jME's to a high quality opensource engine, something which much harder to achieve on your own.

So much for my fan-boy posting...  ://

Yes, documentation is quite the weak point, and man it's hard to just sit down and do it. The wiki is there for everyone to make use of, and I really do encourage it. However, I think currently there is a feeling that only devs are supposed to be writing in the wiki, where that's not the case. It's hard to get people over the fear of writing public documents I guess (especially if they feel they could be wrong). I think the more people that participate the more people will start participating, it just needs to gain that momentum which is the hardest part.



I encourage people to use it to write notes while they are developing and perhaps that will lead into something useful. Just an idea.

I'll see if I can find time to help out (I actually have a degree in Technical Writing and Editing). The hard part is finding enough time outside of my day job to do all this stuff. I'm realizing that figuring out jME is really a matter of discovering what's there and how to access it. Fiddling around will help you learn, but documentation could save people a lot of stress (and for others having to answer the same questions over and over). I really appreciate the documentation that's already available… I just want more.  :smiley:

The hard part is finding enough time outside of my day job to do all this stuff.


That's true for most of us :)

I totally agree with mojo that as usual it has to do with momentum and establishing a sence that it's not something that has to be perfect to submit(just like with our contest/challenge).

Hello,

I discovered recently jME and I’m agree with you: documentation is missing and is also (sometimes) long to write.



I also think that the wiki is really underused though it is one of the really quick way to write documentation and enhance it time after time.



The user guide (http://www.jmonkeyengine.com/wiki/doku.php?id=user_s_guide) is a little too much red (subjects documentation not available)

and for example,there is no subject about using the joystick though two really good samples are available in the Testcases!!!



Now I’ve got some questions:


  • is there any process for editing the wiki?

  • do someone review the articles?

  • is someone in charge of articles maintenance?



Anyway, jME is really great ;)
Niggle

Anyone should be able to edit the wiki, just create an account and start writing.



darkfrog


Now I've got some questions:

    * is there any process for editing the wiki?


No


    * do someone review the articles?


Yes, I have an RSS feed set up and I read everything everyone writes. I'm sure others do as well.


    * is someone in charge of articles maintenance?


No

Wiki on the brain.



It's probably because I don't read the forum section for AI but I don't have a clue about its current state or use with jME.  Should there be chapters for it within the wiki?  What about for Physics and the jMEDesktop/GUI?  Shoot, the DarkFrog may want to have a chapter for Networking.

nobody's holding you back guys :slight_smile:

I've been thinking about helping out the documentation part of jME, but I just wanted to see if I should wait for an official jME 0.11 release instead of righting about the latest CVS code.



Such things as using applets (although there is already a great tutorial on it), and other things like darkfrogs new GameState stuff. I guess I could try to start writing stuff and then update them if the API changes before the next official release.



Also is there any benefit in documenting the jmetest classes, almost as a kind of tutorial/unit test for that area.

Depends on the situation. Some stuff has been on jME for a long while, but is still not documented well. Obviously, bleeding edge new stuff can still undergo changes.



I wouldn't look at official version numbers, they are not a very good indicator to dedice this type of thing. In fact releases often seem to happen right before big changes are made.

llama said:

...
In fact releases often seem to happen right before big changes are made.


I suppose big changes is the stuff that might make jme unstable/buggy. the logical conclusion is that the versions before big changes are the most stable and adequate for release :P