Where to start?

This is a general 3D gaming question than anything JME specific - so bear with me.

I've recently discovered JME and have been having fun experimenting with the various features.  I've managed to learn a lot in a short space of time thanks to this site, the demos, etc.

However, what I lack is understanding of many of the concepts unpinning 3D game design.  To pick a really trivial example:  I can follow code examples that use a Quaternion, and I can tell from the context / API roughly what it's doing, but what I can't always tell is why, what the hell is a Quaternion anyway, and why would I want to use one, etc.

Can anyone recommend any good sites and/or books that cover 3D game concepts, ideally from the basics through to the tricky stuff?  Alternatively, does anyone know of a good (and documented!) example project so that I can download the source (ideally an RPG / MMO style with large-scale terrain rendering, because that's where my interests lie).

Note that I'm cool with most of the maths, I'm a veteran (read old) software engineer with a strong maths background.

It's possible that other newbies have posted the same or similar questions before but I couldn't fine any likely looking threads (apologies if there are) and I've given up looking on t'internet :stuck_out_tongue:

Cheers in advance


They are still one of my biggest frustration, so don’t feel like it’s just you. :wink:

Regarding the Quats… I just picked up this book which I’m liking a lot:

Visualizing Quaternions

nice…I think we all need this book. :slight_smile:

Someone asked a similiar question a little while ago, and I gave my reading/learning recommendations, check it out!

dougnukem said:

One of the best resources on getting started with jME is the jME Wiki site:


Here are some of the tutorials listed there to help you get started:

As for books related to 3D game programming and Java I'd recommend the following:

I'm still learning myself, I think the best way is to just jump in and start some of the tutorials learn what you can and then try to tweak it and learn some more. The major things to learn in 3D programming is the stages in the OpenGL rendering pipeline, so you know when to apply certain logic (although jME abstracts most of this away for you, so you only have to know where in the jME rendering abstraction to do certain thins).

Also here's my bookshelf listed on LibraryThing (http://www.librarything.com/catalog.php?view=dougnukem) which contains a good amount of game programming and computer graphics books that I've found useful, can't say that I've read them all cover to cover, but they are great references when I need them, and occasionally I have time enough to actually get through one of them.

Many thanks

I'm working my way through the tutorials, but somehow managed to miss the list of books on the Wiki  , cheers.