• Advertisement
Sign in to follow this  
  • entries
    2
  • comment
    1
  • views
    2778

Entries in this blog

[color=#000000][font=arial, sans-serif]

The last days i worked on the terrain generator. I was not satisfied with the result of my unparameterized height-generator. Because there were no significant continents or mountains. So i decided to implement a node-based height-generator, which will gives me overall control of the generation process.

[/font][/color]

[color=#000000][font=arial, sans-serif]

Node based systems are easy to explain. You have a source (or n sources) and a destination. Between these two points, there can exist 0..n modifier nodes which are modifying the incoming value. So i am abled to mix two noise-functions for getting a combined height value. Actually there are no restrictions in the number of sources, but of course you just have one output node.

[/font][/color]

[color=#000000][font=arial, sans-serif]

In the screenshot below i used ridged-multifractal and perlin noise. They are scaled, got an negative offset and are added together in proportion 1 to 3.

[/font][/color]

[color=#000000][font=arial, sans-serif]

I oriented myself on the blender node-system, which was a great inspiration. So i can also do easy mathematical operations like mix, add, sub, mul, div or trigonometric operations, ...

[/font][/color]

[color=#000000][font=arial, sans-serif]

The whole power of this system can just be used, if there is a GUI like in blender. Today i tried to combine windows forms with the xna-GraphicsDevice. But unfortunately i have a design-lack on my planet-class, so i cannot use them in this windows form (yet). I will try to find a solution for that. Actually I'll need an xna-internal GUI, but thats very cumbersome and eats a lot of time. Because of finalizing my vacation tomorrow, i cannot really spend much time on that now. But i have to, because i need it.

[/font][/color]

[color=#000000][font=arial, sans-serif]

The last point of interesting is the simple terrain-colorizer. Its just a simple pixelshader which colorizes the surface in depency of the height. If there is a GUI for the node-stuff, i will also parameterize the colors and tresholds. Planets with sand, grass, mountains are quite boring.

[/font][/color]

[color=#000000][font=arial, sans-serif]

ToDos:

[/font][/color]
[color=#000000][font=arial, sans-serif]

- Implementing atmospheric scattering

[/font][/color]
[color=#000000][font=arial, sans-serif]

- Implementing frustum-dependent LoD (my current algorithm is slow and doesnt work quite well)

[/font][/color]

[color=#000000][font=arial, sans-serif]

1aaa.png

[/font][/color]
[color=#000000][font=arial, sans-serif]

I'm doing some researches about the creation of planets. One cannot doing something interesting, and i have some problems with creating fractalized terrain. But the first step is done. Credits goes also to Brano Kemen (Outerra), who helped me out a lot. Probably he's the most brilliant head for that topic on this earth.

[/font][/color]

[color=#000000][font=arial, sans-serif]

1a.png

[/font][/color]
Sign in to follow this  
  • Advertisement