Map seed Tile size
Viewport width
Viewport height

ZoomWorld

This is an experiment with a world that has a very deep zoom. Drag the map to pan. Use the mouse wheel to zoom.

The idea is to have a world where detail is only created when you need to see it. Then you can have a truly enormous world, but still have it fit inside a small amount of memory. The above world is three times the surface of the sun.

It starts by creating a map of 256x256 tiles, with random elevation and humidity values. When you zoom in a step, each tile is split in four. The top left sub tile becomes a copy of the parent tile, and the other three get their elevation and humidity from an average of the adjacent tiles, plus a random value.

Elevation below zero is classified as waters. Waters greater than a specific size are oceans (deep blue), the rest are lakes (pale blue). Lowland areas are forests (normal humidity, green) or deserts (low humidity, yellow). Gray are mountains and white are mountain tops.

It is facinating to zoom in and see how more and more detail is created. Imagine having it zoom in on a rich detailed world with forests, cities and people, all procedurally generated on the fly.

Ideas for improvements:

Back to Bjorn's blog.