Noise Part III (GPU)

Well it’s taken a lot longer than I originally planned, but here is the third part in the Noise series. In the last two noise articles, I explained how I was using perlin noise to produce heightmap textures, as well as the code used to implement Ken Perlin’s improved noise function. So far this has all been on the CPU. In this article, I will explain how I ported this onto the GPU to produce heightmaps and diffusemaps for all the terrain patches.

Procedural Road Generation

In the past weeks, I have approached the issue of generating procedural roads at runtime based on different maps generated by the Engine. The road generation is based on self-sensitive L-Systems.  This article will outline what L-Systems are and how I have started to use them to procedurally generate road networks. This can be a [...]

Progress Update (June 2009)

I have been working on many things in the last 6 weeks, so I think it is time for another progress update.  In this update I will outline which components I have started and the progress, including LTrees, GPU map generation and the GUI. It hasn’t all been quiet on the site though, as it [...]

Scale and 32-Bit Imprecision

Over the last few months, I have made quite a few posts and answered a few questions about the issue of imprecision, and more importantly how I overcame it. So I have decided to write an article, so I can always link back to it.

Update On Progress (15 April)

Again its been a while since the last update, and again, not due to any inactivity, but rather I’ve simply had too much to do. In this article, I’ll just go over what I’ve implemented and what I’m still struggling with in the last 3-4 weeks.

Clouds Part I

This is another article which I plan on writing in a few parts. I have added a pretty simple cloud layerr to Britonia using a distored fBm fractal and improved noise basis function. This is used in a shader to generate a per pixel cloud map, which is then just sampled over a spherical ‘terrain’ which a height of zero.

Progress Update (Feb 2009)

I haven’t been able to update the site for a few weeks, partly because I haven’t got any one feature finished to show you, and partly because I have simply got so much to do. So here is an update on what I am currently working on

Cube to Sphere Terrain Projection

Because a few people who read the blog/website have asked about how to convert a cube into a sphere when creating planets, I have decided to write this entry.

Noise Part II (CPU)

Well, here is the second part of the noise articles. In this article, I’ll first post the 3d noise code which I have started to use to produce my 3D perlin height map textures, and then I’ll post some functions for using the perlin noise The results can be used for a handful of things, [...]

Atmospheric Scattering

As you may have noticed this will be the first entry of two.  I have implemented Sean O’Neils atmospheric Scattering as described in GPU Gems 2, and in the next few articles I hope to outline how I went about implementing it. Sean O’Neils implementation is split into several parts, these are GroundFromAtmosphere, AtmosphereFromAtmosphere and SpaceFromAtmosphere as [...]