Tuesday, 27 March 2012

And Now For Something Completely Different...

In an attempt to create a more interesting landscape, I had an idea.
Offset the time values of 3D Brownian Motion with the results of a 2D slice of complex fractal.
Shown here is the results of a Rigid Multi Fractal.

512 x 512 x 512 = 134,217,728 Voxels
8.17MB = 8,573,371 Byte Filesize

A fair bit larger file than the previous landscape but it contains a lot more detail.

Procedural 3D Texturing

This mixes 3D Perlin Noise Turbulence with a 2D detail image to attempt to create an appearance of rocks covered in moss.

I've fixed my filtering issues =)
They were cause by the way I was storing the fragment positions. I resolved the issue by changing to recreating them from the depth buffer.
This combined with the previously mentioned dFdx/y functions creates perfect deferred texture filtering.

Also I've altered and simplified my compression it now uses fixed size run length codes (unsigned short (2 bytes)) which has reduced file sizes by a few megabytes.

This "landscape" consists of 512 * 512 * 300 = 78,643,200 voxels.
Its file is 1.56MB = 1,643,755 bytes.
Therefore, a 78 times reduction.