0

So, I've been working on a game of mine but I have hit a dead end with something. I do not understand the concept of Noise in World Generation.

A long time ago I tried to make my own 'map generator' by pretty much coding a 500x500 image and telling the program 'if * pixels of this kind are close, you have % chance of copying it".

However, that came out pretty ugly, so I'm trying to find better alternatives to my world generation.

Right now I want my world gen to support 2D only, the flat landscape of only 3 tiles. However, whatever 'noise' generator I use, I want to be able to add over 12 different biomes, 80 tiles, etc, and have the map in more of a 3D, in the sense that it will also have hills and such(Although its for a 2D game).

So, pretty much I'm trying to understand the concept of 'controlled' noise generation for maps so I can create my own generator.

I have looked into the source of many Perlin Noise generators, but I can't quite grasp what is going on behind all the complex math the programs seem to be doing.

So, my question is, what is the idea behind Controlled Noise Generation? What is most programs actually doing that I should be trying to copy and warp into my own?

tshepang
  • 12,111
  • 21
  • 91
  • 136
  • I generate terrain for flight sims, etc. My 2 main approaches are using real GIS data (DEM, DTED, files, etc) and the noise approach. It's a bit broad, so I would just recommend googling 'Perlin Noise' for explanations. Your results either way will be much nicer than the "% chance of copying it" approach you tried. – Mark Stevens Oct 08 '12 at 20:30
  • I think this is off-topic for SO; probably belongs on [gamedev.se] since it isn't specifically Java code-related. – Jim Garrison Oct 08 '12 at 20:32
  • Controlled - means: repeatable every load, every code run – bandybabboon Feb 09 '14 at 03:45
  • online writers have made pages with many pics, i think you can find 10 different perlin explanations, tutorials etc online, probably 20. so use online resources from google, it's faster for you and you learn more than you could learn on a forum. https://code.google.com/p/fractalterraingeneration/wiki/Perlin_Noise http://www.angelcode.com/dev/perlin/perlin.html http://devmag.org.za/2009/04/25/perlin-noise/ ... note that perlin noise is not the fastest on pc, i prefer quilez value noise. – bandybabboon Feb 09 '14 at 08:58

1 Answers1

0

Controlled - means: 1/repeatable every load, every code run 2/stylised, shaped noise

there is noise quality: lack of artificial patterns visible in it, like squares and repeats

depth: how complex the noise is, how many noises on top of each other

and noise speed: how fast on the processor

perlin makes a zig zag wobble like an irregular wave. it starts with irregular points and joins them into a curve instead of lines using cubic interpolation. and to make it 2d, it takes irregular points along x and y and mixes them in an advanced way. it's good to learn 3d graphs to figure it out, for example milkdrop program, where you can multpiply or add sin(x) and sin(y) and see what shapes it makes. instead of sin, noise is irregular.

bandybabboon
  • 2,210
  • 1
  • 23
  • 33