[JMonkeyEngine 3.0] Any beginner tutorials?

I really want to start making some 3D games. Just because. I don’t really know why. I just am in that mood and can’t think of any good 2D game ideas.

Anyways, I want to learn some JMonkey but I don’t know where too many GOOD tutorials are.

I’m looking for tutorials (Hopefully in the same series) that start at beginner and drop you off around an intermediate place. (Though just beginner tutorials are fine by me!)

So, do you guys have any good resources for me?

EDIT: Also, to those JMonkey or LWJGL vets, is JMonkey worth my time. Or should I invest in LWJGL?

Did you even explore the website?

Beginner Stuff
Intermediate Stuff

If you can’t go through these and understand the code, then you are not ready for 3D.

I don’t think you are ready for 3D, I have been coding twice as long as you and I don’t feel ready for 3D, there is just so much to learn from 2D.

If you want to make a 3D game without a lot of boilerplate code, then JME is the way to go.

All I can tell you is that you NEED to have some good fundamental knowledge of how OpenGL and its rendering pipeline works to do anything.

Looking at your past work it looks like you’ve only written 2D games using libraries like Slick2D and Java2D. Personally, all I can tell you is this: Learn LWJGL, make a 2D game using it, then you should be able to move onto 3D rendering once you have learned how OpenGL works.

Seriously, I can’t stress this enough! I started learning OpenGL in 2011 and I had absolutely no clue how it functioned. I used SDL in combination with it, and it did make a lot of things easier, but nothing good really came out of it because I kept running into some errors that I could’ve fixed if I knew how the pipeline functioned. Don’t let ambition get the best of your learning. :slight_smile:

Start out with making 2D games using core LWJGL, then move onto making 3D ‘games’ once you have a good idea of how the rendering pipeline works.

If you are a bit lazy and/or don’t have the time to make a game in OpenGL and would rather research your way out of it, I would go here, here, and here.

There are also many books you can read to learn how to handle 2D/3D rendering in OpenGL, and as well there are many online tutorials on how to make games with it. Personally, I would recommend reading the OpenGL SuperBible, it has helped me a lot in my years. Link.

If you want to take the YouTube route, all I can say is that you can choose anybody to follow along with, just be sure not to be ignorant. The code that you are taught in these tutorials isn’t meant to be spoonfed into your mouth, it’s meant to be learned, tinkered with, used to actually make a god damn game.

Hopefully that helped! I hope you enjoy your journey of learning OpenGL, have please be sure to have fun! ;D. Otherwise you’re just gonna get nowhere if you don’t enjoy what you’re doing.

Also, the #1 best advice I can truly give you is this:
When in doubt, keep calm and read the documentation.

  • Jev

[sup][sup][sup][sup][sup][sup]Be sure to learn sprite batching![/sup][/sup][/sup][/sup][/sup][/sup]

Remind me why you need to know opengl to use JMonkeyEngine?

He probably means in the sense that OpenGL a black box when using jmonkey, learning how it works under the hood would help you develop efficient code and debug problems easier…???

There is nothing worse than using something and you don’t know how it works, for me anyway.

That’s like saying Java is a black box for you because you don’t know assembly. There’s no need to know lwjgl to use JME, you just use JME’s high level classes. Same goes with other libraries; can you use opengl with libgdx? Yes, but you don’t have to.

True yes however you miss my point, sure there is no need to know x y and z to work a b and c, but knowing what is happening under the hood can help you use and fix whatever it is you are using.

I was merely stating that KNOWING can help, but is not required.

People drive cars everyday without having a clue on how they work, know a little bit about one and you can fix minor problems. Such as basic wiring to fix broken door locks or faulty lights.