LWJGL 3 Modern Tutorial

Started by Ray1184, March 03, 2016, 15:49:51

Previous topic - Next topic


Hi all!
I'm developing with LWJGL since 4 months more or less (before I did some experiments with pure OpenGL).
I saw that was not so easy to find a complete tutorial covering all LWJGL usage, but I found one that I think it's one of the best that I found, because:

1- Covers all usefult threads, from the basis to skeletal animation (that afaik It's a very hot topic but difficult to understand).
2- It's modern (LWJGL 3 with java 8)
3- Has a gitbook covering all topics and a maven project with all examples to download from git. The architecture is very good, easy to understand and to take as example for implementations.

The link is this:

The tutorial has 19 chapters:

1. First steps
2. The Game Loop
3. A brief about coordinates
4. Rendering
5. More on Rendering
6. Transformations
7. Textures
8. Camera
9. Loading more complex models
10. Let there be light
11. Let there be even more light
12. HUD
13. Sky Box and some optimizations
14. Height Maps
15. Terrain Collisions
16. Fog
17. Normal Mapping
18. Shadows
19. Skeletal animations and MD5 loading

Was written by@lwjglgamedev (also present in this forum).

I found this very very useful, and I suggest (in particular for novice) to take a look at this.

- Ray -


Made an account to thank you for this, I've been searching for a suitable place to learn modern LWJGL practices and have been going absolutely crazy looking for a tutorial that doesn't use depreciated techniques or libraries that aren't even in LWJGL anymore. You've saved my life and my sanity, I was starting to get discouraged.



I found this about a week ago and I agree it's very good.  A great job by the author.


I really like the explanation as to what each part is doing in his explanations.

Some criticism however, is that it lacks explanation on how to incorporate the code in each section, and only over-viewing the code.

For example, The Game Loop section, I became completely lost as to where to implement the gameLoop he was explaining, I needed to look at the source files and WOW, it was completely different to what I'd done, he split it into classes where I assumed he carried on from his previous example (the LWJGL demo example).

I would have loved a bit more explanation as to how to implement it into code, rather than just forcing the user to refer to the source, which unfortunately that makes it more difficult to learn and incorporate.

Just my two cents, I'm only able to use this tutorial as a reference as following along became impossible.