I'm a computer science student who wants to develop video games. I believe my ultimate aspiration is to do technical art, because I love both programming and working with 3d models.
Okay, got my life story out of the way… I've just recently completed my Object Oriented Design course in college, and have been dabbling in Java outside of class. We mostly covered data structures and the Java Collections Framework, but I have some good books for brushing up on other topics.
Does it sound like I have enough background to get started with jME, or will most of it be over my head? The idea of a game "engine" is still kind of foreign to me, especially since almost any engine imaginable is in a state of flux. I don't know what it means to use OpenGL or OpenAL, but I know how to code in Java and I know I like making 3D models and I'd like to put the two together.
So where do I start?
I certainly think that's enough to get started with using jME.
I would start here: http://www.jmonkeyengine.com/wiki/doku.php/new_frontpage
We've had some people very busy creating, updating, and reviewing documentation. What I linked to above is kind of an ell-encompassing guide to the major aspects of jME. It will show you how to insert the jME libraries into your project as well as get started with making a simple game.
Just go at the pace you feel comfortable and remember that making a game is a big (and rewarding) task…
I don't know what it means to use OpenGL or OpenAL,
You really don't have to know anything about both to use the engine. Even for very much intermediate stuff you don't have to use openGL. Ok, it is of course good to understand what is going on behind the scene, but you are not forced to use it.
If you're familiar with algorithms, data structures, and general programming, yeah you're there in the basic sense.
While you don't need to know much about openGL or the inner workings of jmonkey (or any engine) to do simple stuff, it's still a good idea to dig deep. Read the source code, investigate how things are accomplished. Get a book on computer graphics, and learn the basics of rendering stuff to the screen, etc. Not only will you gain a deeper appreciation for why things are the way they are in this engine (and others likely), you'll also gain experience. That's a good thing to get, especially as a student, because you could use jmonkey in a school project in the future (e.g. if you have a software engineering project where you have to build a chess game - don't just use swing/awt, do it in 3D!) and more importantly, you'll become a better programmer and excel in your studies. Plus you have work - other than school assignments - to show off in your portfolio in the future.
Everyone begins somewhere…don't think you're going to make a MMO or something terribly complex and looking like the AAA games out there by yourself, but you certainly are at the level to start using, tinkering, and learning.
Sounds like JME is perfect for you. Java is arguably one of the cleanest object-oriented programming languages, so great to enhance your skills in OO programming. JME is just enough of an engine to keep you from having to deal with the low'n'dirty OpenGL stuff but plain enough to have you try out different programming approaches to game engines.
Welcome and have fun!
Wow, thank you for the kind replies. I think I'll spend some time learning with this engine just for forum community alone!
@ Starnick, you're right on the money, I'm aiming to add some personal projects to my portfolio and gain more experience in general. I've been building up a core group of friends to make games with and I have a feeling we'll definitely try for something in jME.
Next semester I'm taking a course in linear algebra which I'm looking forward to, and next year doing some courses in graphics and animation. In the meantime I'll take your advice and maybe grab a book to get a handle on graphics rendering and such before I take the classes.
Thank you everyone
I started my system in other engines with C + +, but I do much better with jMonkey … For the fact of dealing with OO, multi-platform and be able to count on all the great features that Java offers!
I started my system in other engines with C + +, but I do much better with jMonkey ... For the fact of dealing with OO, multi-platform and be able to count on all the great features that Java offers!
Yes me too! I absolutely love it.
I want to give huge props to the author of the beginner tutorial series in the wiki... I'm about halfway through and have understood every single line because of how they are explained. THANK YOU!