Java-Gaming.org
Play Revenge of the Titans! The situation is critical. We need fancy commanders to defend Earth, the moon, Mars!
Featured games (78)
games approved by the League of Dukes
Games in Showcase (406)
games submitted by our members
Games in WIP (293)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
   Home   Help   Search   Login   Register   
  Show Posts
Pages: [1]
1  Discussions / General Discussions / Tile maps - generating islands or continents? on: 2012-08-25 15:39:02
Hi,

I have a 2d tile game, and I'd like to generate random maps (of size 100x50). I'd like to be able to create small islands, or large continents.

It seems like a standard way to do this is to use perlin noise. You generate a random heightmap, pick a threshold for the water line, and assign tiles their terrain type from that.

Looking at perlin noise implementations, I can't find a description of the domain of the different parameters, or how/if they can be combined to generate small islands vs large continents. Perlin noise seems to have a few parameters:

    persistence
    frequency
    amplitude
    octaves

Is anyone familiar enough with this to describe them, and how they can be combined to create the "clump" size I'm after? I found a posting by a member here that made an interactive demo of perlin noise:

    http://www.java-gaming.org/topics/perlin-landscape-applet/24141/view

but I'm basically just playing with the parameters without really knowing what they're doing. I'm not even sure what the min/max range of each of the above params can be.

I found this article which is pretty much exactly what I want:

    http://www.nolithius.com/game-development/world-generation-breakdown

but the author is using flash which has a perlin noise function built in, so I'm not sure how its version of perlin noise and its parameters map to a .. "standard"? version of perlin noise. The author says:

"Generate a Fractal Grayscale Perlin Noise with an x-frequency of half the width, a y-frequency of half the height, and 8 octaves. For more loose islands, or for larger maps, you can drop the frequency to 1/4th of the width and height or lower, to fit your purposes."

Matching that up with the sample applet from the above user didn't yield expected results.

If anyone is knowledgable about this it'd be awesome to get a clear description memorialized on the nets.

Thank you
Pages: [1]
Play Revenge of the Titans! The situation is critical. We need fancy commanders to defend Earth, the moon, Mars!
 
Get high quality music tracks for your game!

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

The invasion has landed! On Mars! And you're there to beat 'em!
cubemaster21 (84 views)
2013-05-17 21:29:12

alaslipknot (92 views)
2013-05-16 21:24:48

gouessej (123 views)
2013-05-16 00:53:38

gouessej (115 views)
2013-05-16 00:17:58

theagentd (127 views)
2013-05-15 15:01:13

theagentd (114 views)
2013-05-15 15:00:54

StreetDoggy (158 views)
2013-05-14 15:56:26

kutucuk (180 views)
2013-05-12 17:10:36

kutucuk (180 views)
2013-05-12 15:36:09

UnluckyDevil (187 views)
2013-05-12 05:09:57
Complex number cookbook
by Roquen
2013-04-24 12:47:31

2D Dynamic Lighting
by Oskuro
2013-04-17 16:46:12

2D Dynamic Lighting
by Oskuro
2013-04-17 16:45:57

2D Dynamic Lighting
by Oskuro
2013-04-17 16:23:20

Noise (bandpassed white)
by Roquen
2013-04-05 17:36:01

Noise (bandpassed white)
by Roquen
2013-04-03 16:17:38

Java Data structures
by Roquen
2013-03-29 13:21:12

Topic Request
by kutucuk
2013-03-22 21:42:01
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!
Page created in 0.079 seconds with 21 queries.