How to start?

Started by floatogamer, May 25, 2015, 11:48:09

Previous topic - Next topic


Hi, I'm wondering how to start game development. I am using LWJGL version 2.4. I need help with generating terrain and loading textures. Anyhelp will be greatly appreciated. Thanks



Since you want to start game development I would suggest to use a newer version of LWJGL, if you want the legacy LWJGL try version 2.9.3.
But if you want to use the newest version 3.0.0a you may want to take a look at the tutorial I started a while ago, you can find it here.
Hope that helps :)


LWJGL does not help you with generating terrains.
You would need to build the vertex buffer for a (probably) heightmap yourself.

Until a few days ago LWJGL also did not help you with loading image files in order to upload them as textures.
Luckily the latest build of LWJGL 3 now features bindings to the stb libraries.
Have a look at this demo showing an example of how to load an image.

Also please understand that LWJGL is not a game engine/library which ought to make game development particularly easy.
LWJGL is merely an "enabling technology" which just enables you to use the very-low-level OpenGL API as well as some other low-level APIs for sound (OpenAL) and compute (OpenCL).

Nowadays, I probably would not advice people to use LWJGL for game development except for the very very simplest of simple of games, such as two rotating triangles, because very soon you will find yourself in the needs for more higher level stuff, even starting at the very basics such as a linear algebra library, which LWJGL also does not feature.

You probably want to use libGDX, which has more high-level stuff, such as image loading and camera controls.
Or go big from the start with Unity 5 (does not use Java, though).


What I mean by generate terrain is use the java Random class to generate points, and store them in a list.


If that is the way you are doing it, you may find this article of some use :

It's a good 'first steps' course in terrain generation from a noise function.