Main

Code

Games

Graphics

Projects

My Company

Lowpoly Studios

Social Networks

Facebook
Last.fm
LinkedIn
Picasa
Twitter
Vimeo

Twitter Updates

    Follow me!
    GPU Terrains
    Perlin noise

    Gpu Terrains is a GPGPU project I started as final thesis for my master degree in computer science.
    The main goal of the project was to implement some terrain generation and erosion algorithms and make them run on a modern GPU, so using (fragment) shaders for the computation.
    Using such a technology it's possible to generate and erode a terrain in a really short time, so, for example, it's possible to generate a virtually infinite number of different terrains inside an application and offer to a user an always different game experience.

    Fault formation

    During the project I've implemented three different generation algorithms: Fault Formation, Circles and Perlin Noise, and four different thermal erosion algorithms, two of those have been invented by myself and they are the ones that gives better results.
    Furthermore I've implemented some other related stuff, like a fragment shader for procedural texture generation, another one for the map-masking technique and a simple terrain engine as proof of concept of my research usability.

    Circles

    As it's possible to see looking at the latest benchmarks, the results of my reasearch are amazing.
    Using a really cheap GPU like a Nvidia 7600GT, it's possible to get an eroded 1024x1024 heightmap in about 0.7 seconds, and using a bit more expensive GPU like a Nvidia 8600GT, it's possible to get the same heightmap in less than 0.3 seconds.

    The pictures in this page show three different terrains generated using the three generation algorithms and eroded by my first thermal erosion algorithm, the 3D renderings are made with Blender, it's possible to see more 3D renderings in the 3D page of the website..

    project website:
    technologies related:
    • C++
    • GLSL
    • SDL
    • OpenGL