Should I Learn OpenGL for Jmonkey Games?

Before taking the final decision. I think you guys can help me !
I am planning to learn LWGL3 and OpenGL. I love jmonkeyengine and I am working with Unity Engine for 2D Games. I am free now and I have found some other job. I want to create my own 3D Game. And I know JME is a low level type of engine like a framework. So, it’s not like Unity or Unreal etc. Should I learn OpenGL for better Understanding. To know about the 3D Game Programming. I don’t want to make new graphical features or anything like that. I just want to make my game and I have just develop 3D games with Unity (Basic Games like Car Racing, Shooting etc). I don’t have any knowledge about 3D games and I am reading a book for that purpose.

What should I do ?

First, run through the JME tutorials. From there, you will have questions and can figure out the best path to getting to answers.

OpenGL knowledge is super helpful but you can get really far in JME without knowing anything about OpenGL.


I have been using JMonkeyEngine for years and never needed to know anything about OpenGL itself (JMonkey abstracts away a lot of that). You’d only need to know about that if you wanted to go even lower level and write your game directly with OpenGL calls (which if in java would be via LWJGL).

Probably a better use of your time if you want a deeper understanding (after getting to grips with the basic ideas of your chosen engine be that JMonkey or Unity; hopefully JMonkey) is writing shaders; these are the “programs” that run directly on the GPU. You can get a basic game running without having to touch those either (Or more precisely, using JME’s built in shaders) but to produce interesting visual effects you often need to write shaders.

But I wouldn’t start with shaders, they aren’t hideously-hard, but they are kind-of-hard. As @pspeed says, run through the tutorials and see if you like the way JMonkey works. If you want a quick way to get a JMonkey project set up there is a utility for that


i were not learning OpenGL at all, i just learned what is needed for shaders and custom mesh in JME.

and its really not much knowledge needed.

JME is not really low level(its based on LWJGL that is low level), it just allow low-level access directly for many things, but its up to you if you need it.

Shaders might be lacking higher-api thats correct. But again, you do not always need write custom shaders. (this all depend on game)

1 Like

I mean if I do not need any shaders and if I use built-in shaders. Then, can I make a good looking game with some good low poly assets. by the way @pspeed your first game from 2012 Mythruna uses any type of OpenGL or Custom Shaders ?

i guess Paul for sure use custom shaders.

But it have nothing to do with low-poly.

you can make high-poly game with built-in shaders without problem and have them looking modern.

1 Like

Last Question, is Jmonkey SDK is enough for a beginner like me to make a complete game (Low Poly FPS Game) ?
I want some terrain editor which is there in SDK and some other things like that.

depend on game and what you need.

For example i needed big world with ECS editor in place, so i needed fork SDK editor into in-game custom one.

For small maps SDK one might be sufficient.

There are anyway different ways like using Blender+customdata to design map.

btw. currently i do not use SDK at all, all i use is Intellij.

1 Like

Both the original version of Mythruna and the current version use some custom shaders… which are mostly just a fork of JME’s Lighting.j3md to add vertex lighting that a block world needs. There is no custom OpenGL stuff in either version.

I am able to sometimes leverage my OpenGL knowledge to make JME do some non-obvious stuff but it’s not necessary.

Advice: make a simple game with some decent looking assets… then branch out from there.

1 Like

@oxplay2 Thanks man for your information and guide. I will upload in Monthly WIP what I will achieve using SDK.

Thanks man. @pspeed your game is big inspiration for me since I found jme in 2018 and I loved it when I first time tried it. Will you release your current version for free or on steam ?.
I think you have been using Jmonkeying for more than 12 Years ??

Eventually the new Mythruna will be on steam. The development version is free right now to anyone who has watched a recent video and looked in the upper left corner. (I just cut a new release last night, in fact.)

I started Mythruna development in February 2011. Coming up on 13 years.


Good with Your Mythruna Journey.

For my own experience, you really don’t need to learn GL if you don’t want to “extra” functions other than those Jme provided. A game engine is designed to make developing much easier than “reinvent the wheel” .
If you expected more, then GL knowledge is necessary but not enough! You will need to learn Computer Graph course as well.