Minimal JavaScript fantasy map generator.
See the demo.
Author: Leonardo FLorez
Can be used as a plain script, or a Node.js module.
In the browser, include d3
and terrain.min.js
:
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/4.5.0/d3.min.js">
</script>
<script src="https://github.com/ldd/fantasy-map-generator/raw/master/terrain.min.js">
</script>
Optionally, a web worker may include terrain.worker.min.js
, which attempts to be as tiny as possible, and does not include drawing functions (drawMap
, colorMap
)
// Generate a Map.
// terrain.generateMap(numberOfPoints, seedString, useSeed);
var aMap = terrain.generateMap(512, 'map!', false);
// Draw a map to a svg element.
// terrain.drawMap(svgElement, points, coast, rivers);
var svgElement = d3.select('#mesh');
terrain.drawMap(svgElement, aMap.points, aMap.coast, aMap.rivers);
// Color a map inside a svg element.
// terrain.drawMap(svgElement, points, colorFn);
terrain.colorMap(svgElement, aMap.points, function(normalizedHeight){
return 'gray';
});
npm install fantasy-map-generator
// Generate a Map.
var terrain = require('fantasy-map-generator');
terrain.generateMap(512, 'map!', false);
README
web
and webWorker
builds, ignored by .npmignore
README
gh-pages
branch)web
and webWorker
builds (npm-module
branch)License: MIT
Copyright 2017 Leonardo Florez.