Jump to content

  • Log In with Google      Sign In   
  • Create Account

Evolution -- Rewrite and Lots of Updates!

Posted by studentTeacher, 31 August 2013 · 429 views

voxel terrain java lwjgl openGL management shaders fixed function engine evolution
So I've been away from this journal for a few weeks. Recently, I've not made much noticeable progress on Evolution; The game continued to expand it's boundaries with basic terrain finishing up, and began delving into AI and other aspects of the game that I've been doing research in. However, I come with this update to share some special news!

First of all, My code-base began taking up a lot of space in just a couple classes, so I re-factored my classes and rewrote a lot more of my code to make it cleaner and more reusable. This took quite some time, but the code I've written is much easier to follow and exponentially more effortless to modify in the future. Things took an interesting turn here, because I started implementing the basics of a modular approach to my noise implementations (fractals, gradient/value noise, Perlin noise, and so on). This allows for an easier time creating new terrain and biomes. This has made it very fun to tweak values and see what terrain can be created, and also makes the step to add scripting to the game a bit easier as well.

The next thing I did was implement 3-D Perlin Noise to the terrain core, which took quite some time to fully understand. I had the hardest time getting the terrain to lose its "sponge-like" look and be a bit more . . . grounded. It now looks quite alien and unique, while still looking like, well, terrain:

Posted Image

Posted Image

Posted Image

Posted Image

What do you think of that! Most floating islands disappear, but there are still a couple here and there that show up. I also need to work on how to incorporate flat areas into the terrain; most of it is either hilly, jagged, or bumpy, but never really flat. Mountain regions need a flat area here and there; they don't need to be all ups and downs! Also, the colors aren't final; they were just thrown in (i know, quite sharp to the eyes) but I'm going to work on a shading system later.

Speaking of shading, that's the latest part I began working on. This engine so far has been running on the old fixed-function pipeline. I've spent the last week or so learning about shaders and transferring the engine over to a shader-based implementation.

Lastly, I've been starting an implementation for terrain management. This was the part that I've been dreading the most, but It's time to do it. Right now, terrain is only offered for a finite distance; to make the world infinite, I need to make a management system of loading and unloading chunks. I have a feeling this part might take some thinking to figure out. Wish me luck!


December 2014 »

1415161718 19 20

Recent Comments