public static class WorldMapGenerator.MimicMap extends WorldMapGenerator.EllipticalMap
WorldMapGenerator.BiomeMapper, WorldMapGenerator.DetailedBiomeMapper, WorldMapGenerator.EllipticalHammerMap, WorldMapGenerator.EllipticalMap, WorldMapGenerator.HexagonalMap, WorldMapGenerator.HyperellipticalMap, WorldMapGenerator.LocalMap, WorldMapGenerator.LocalMimicMap, WorldMapGenerator.MimicMap, WorldMapGenerator.RotatingSpaceMap, WorldMapGenerator.RoundSideMap, WorldMapGenerator.SimpleBiomeMapper, WorldMapGenerator.SpaceViewMap, WorldMapGenerator.SphereMap, WorldMapGenerator.TilingMap
Modifier and Type | Field and Description |
---|---|
GreasedRegion |
coast |
GreasedRegion |
earth |
static java.lang.String |
EARTH_ENCODED
Stores a 512x256 GreasedRegion that shows an Earth map with elliptical (Mollweide) projection, in a format
that can be read back with
GreasedRegion.decompress(String) . |
GreasedRegion |
earthOriginal |
GreasedRegion |
shallow |
edges, heat, heatFreq, maxHeat0, maxHeat1, maxWet0, minHeat0, minHeat1, minWet0, moisture, moistureFreq, otherFreq, otherRidged, terrain, terrainFreq, terrainLayered, terrainRidgedFreq, xPositions, yPositions, zPositions
cacheA, cacheB, centerLongitude, coastalWaterLower, coastalWaterUpper, deepWaterLower, deepWaterUpper, DEFAULT_NOISE, forestLower, forestUpper, grassLower, grassUpper, heatData, heatModifier, height, heightCodeData, heightData, landData, landModifier, maxHeat, maxHeight, maxHeightActual, maxWet, mediumWaterLower, mediumWaterUpper, minHeat, minHeight, minHeightActual, minWet, moistureData, rng, rockLower, rockUpper, sandLower, sandUpper, seedA, seedB, shallowWaterLower, shallowWaterUpper, snowLower, snowUpper, startCacheX, startCacheY, startX, startY, usedHeight, usedWidth, width, zoom, zoomStartX, zoomStartY
Constructor and Description |
---|
MimicMap()
Constructs a concrete WorldMapGenerator for a map that should look like Earth using an elliptical projection
(specifically, a Mollweide projection).
|
MimicMap(GreasedRegion toMimic)
Constructs a concrete WorldMapGenerator for a map that should have land in roughly the same places as the
given GreasedRegion's "on" cells, using an elliptical projection (specifically, a Mollweide projection).
|
MimicMap(long initialSeed,
GreasedRegion toMimic)
Constructs a concrete WorldMapGenerator for a map that should have land in roughly the same places as the
given GreasedRegion's "on" cells, using an elliptical projection (specifically, a Mollweide projection).
|
MimicMap(long initialSeed,
GreasedRegion toMimic,
double octaveMultiplier)
Constructs a concrete WorldMapGenerator for a map that should have land in roughly the same places as the
given GreasedRegion's "on" cells, using an elliptical projection (specifically, a Mollweide projection).
|
MimicMap(long initialSeed,
GreasedRegion toMimic,
Noise.Noise3D noiseGenerator)
Constructs a concrete WorldMapGenerator for a map that should have land in roughly the same places as the
given GreasedRegion's "on" cells, using an elliptical projection (specifically, a Mollweide projection).
|
MimicMap(long initialSeed,
GreasedRegion toMimic,
Noise.Noise3D noiseGenerator,
double octaveMultiplier)
Constructs a concrete WorldMapGenerator for a map that should have land in roughly the same places as the
given GreasedRegion's "on" cells, using an elliptical projection (specifically, a Mollweide projection).
|
MimicMap(long initialSeed,
Noise.Noise3D noiseGenerator,
double octaveMultiplier)
Constructs a 512x256 elliptical world map that will use land forms with a similar shape to Earth.
|
MimicMap(WorldMapGenerator.MimicMap other)
Copies the MimicMap
other to construct a new one that is exactly the same. |
Modifier and Type | Method and Description |
---|---|
protected void |
regenerate(int startX,
int startY,
int usedWidth,
int usedHeight,
double landMod,
double heatMod,
int stateA,
int stateB) |
static GreasedRegion |
reprojectToElliptical(GreasedRegion rectangular)
Meant for making maps conform to the Mollweide (elliptical) projection that MimicMap uses.
|
int |
wrapX(int x,
int y) |
int |
wrapY(int x,
int y) |
codeHeight, decodeX, decodeY, generate, generate, generate, getCenterLongitude, project, removeExcess, setCenterLongitude, zoomIn, zoomIn, zoomOut, zoomOut
public GreasedRegion earth
public GreasedRegion shallow
public GreasedRegion coast
public GreasedRegion earthOriginal
public static final java.lang.String EARTH_ENCODED
GreasedRegion.decompress(String)
. By using GreasedRegion's compression,
this takes up a lot less room than it would with most text-based formats, and even beats uncompressed binary
storage of the map by a factor of 5.8. The map data won't change here, so this should stay compatible.public MimicMap()
MimicMap#MimicMap(long, Noise3D, double)
, then this would be the
same as passing the parameters 0x1337BABE1337D00DL, DEFAULT_NOISE, 1.0
.public MimicMap(GreasedRegion toMimic)
WorldMapGenerator.generate(long)
. The width and height of the map cannot be changed after the fact.
Uses FastNoise as its noise generator, with 1.0 as the octave multiplier affecting detail.toMimic
- the world map to imitate, as a GreasedRegion with land as "on"; the height and width will be copiedpublic MimicMap(long initialSeed, GreasedRegion toMimic)
initialSeed
parameter may or may not be used, since you can specify the seed to use when you call WorldMapGenerator.generate(long)
.
The width and height of the map cannot be changed after the fact.
Uses FastNoise as its noise generator, with 1.0 as the octave multiplier affecting detail.initialSeed
- the seed for the GWTRNG this uses; this may also be set per-call to generatetoMimic
- the world map to imitate, as a GreasedRegion with land as "on"; the height and width will be copiedpublic MimicMap(long initialSeed, GreasedRegion toMimic, double octaveMultiplier)
initialSeed
parameter may or may not be used, since you can specify the seed to use when you call WorldMapGenerator.generate(long)
.
The width and height of the map cannot be changed after the fact.
Uses FastNoise as its noise generator, with the given octave multiplier affecting detail.initialSeed
- the seed for the GWTRNG this uses; this may also be set per-call to generatetoMimic
- the world map to imitate, as a GreasedRegion with land as "on"; the height and width will be copiedoctaveMultiplier
- used to adjust the level of detail, with 0.5 at the bare-minimum detail and 1.0 normalpublic MimicMap(long initialSeed, GreasedRegion toMimic, Noise.Noise3D noiseGenerator)
Noise.Noise3D
implementation, which is usually FastNoise.instance
. The initialSeed
parameter may or may not be used, since you can specify the seed to use when you call
WorldMapGenerator.generate(long)
. The width and height of the map cannot be changed after the fact. Both FastNoise
and FastNoise make sense to use for noiseGenerator
, and the seed it's constructed with doesn't matter
because this will change the seed several times at different scales of noise (it's fine to use the static
FastNoise.instance
or FastNoise.instance
because they have no changing state between runs
of the program). Uses the given noise generator, with 1.0 as the octave multiplier affecting detail.initialSeed
- the seed for the GWTRNG this uses; this may also be set per-call to generatetoMimic
- the world map to imitate, as a GreasedRegion with land as "on"; the height and width will be copiednoiseGenerator
- an instance of a noise generator capable of 3D noise, usually FastNoise
or FastNoise
public MimicMap(long initialSeed, GreasedRegion toMimic, Noise.Noise3D noiseGenerator, double octaveMultiplier)
Noise.Noise3D
implementation, which is usually FastNoise.instance
, and a multiplier on how many
octaves of noise to use, with 1.0 being normal (high) detail and higher multipliers producing even more
detailed noise when zoomed-in). The initialSeed
parameter may or may not be used,
since you can specify the seed to use when you call WorldMapGenerator.generate(long)
. The width and height of the map
cannot be changed after the fact. FastNoise will be the fastest 3D generator to use for
noiseGenerator
, and the seed it's constructed with doesn't matter because this will change the
seed several times at different scales of noise (it's fine to use the static FastNoise.instance
because it has no changing state between runs of the program). The octaveMultiplier
parameter should
probably be no lower than 0.5, but can be arbitrarily high if you're willing to spend much more time on
generating detail only noticeable at very high zoom; normally 1.0 is fine and may even be too high for maps
that don't require zooming.initialSeed
- the seed for the GWTRNG this uses; this may also be set per-call to generatetoMimic
- the world map to imitate, as a GreasedRegion with land as "on"; the height and width will be copiednoiseGenerator
- an instance of a noise generator capable of 3D noise, usually FastNoise
or FastNoise
octaveMultiplier
- used to adjust the level of detail, with 0.5 at the bare-minimum detail and 1.0 normalpublic MimicMap(long initialSeed, Noise.Noise3D noiseGenerator, double octaveMultiplier)
initialSeed
- noiseGenerator
- octaveMultiplier
- public MimicMap(WorldMapGenerator.MimicMap other)
other
to construct a new one that is exactly the same. References will only
be shared to Noise classes.other
- a MimicMap to copypublic static GreasedRegion reprojectToElliptical(GreasedRegion rectangular)
rectangular
- A GreasedRegion where "on" represents land and "off" water, using any rectangular projectionrectangular
that uses an elliptical projectionpublic int wrapX(int x, int y)
wrapX
in class WorldMapGenerator.EllipticalMap
public int wrapY(int x, int y)
wrapY
in class WorldMapGenerator.EllipticalMap
protected void regenerate(int startX, int startY, int usedWidth, int usedHeight, double landMod, double heatMod, int stateA, int stateB)
regenerate
in class WorldMapGenerator.EllipticalMap
Copyright © Eben Howard 2012–2022. All rights reserved.