Page 1 of 2 12 LastLast
Results 1 to 10 of 13

Thread: Make continent-scale heightmap based on existing coastline

  1. #1

    Question Make continent-scale heightmap based on existing coastline

    I'm trying to make a realistic height map based on a fantasy sketch map. I know the shape of the coastline, the size, and details at the level of "there are mountains here" and "there are plains here". I know the locations of some rivers, and some other features, but there's plenty of scope to add additional stuff.

    What software can I use that can:

    1. Work at that scale (I need a map of size about 1500x1500 miles)
    2. Let me start with my known coastline
    3. Will help me build mountains in the places I want them, etc, adding realistic erosion.

    I don't need 3D rendering. (Well, I want to do some, but I'm happy to do that in a different program if necessary -- I definitely want access to the 2D height map either way!)

  2. #2
    Guild Artisan Turambar's Avatar
    Join Date
    Jan 2022
    Location
    Washington D.C.
    Posts
    557

    Default

    Quote Originally Posted by Amy Worrall View Post
    I'm trying to make a realistic height map based on a fantasy sketch map. I know the shape of the coastline, the size, and details at the level of "there are mountains here" and "there are plains here". I know the locations of some rivers, and some other features, but there's plenty of scope to add additional stuff.

    What software can I use that can:

    1. Work at that scale (I need a map of size about 1500x1500 miles)
    2. Let me start with my known coastline
    3. Will help me build mountains in the places I want them, etc, adding realistic erosion.

    I don't need 3D rendering. (Well, I want to do some, but I'm happy to do that in a different program if necessary -- I definitely want access to the 2D height map either way!)
    My recommendation would be either Wilbur or Gaea. There are some tutorials on here for both programs.

  3. #3

  4. #4
    Administrator waldronate's Avatar
    Join Date
    Mar 2007
    Location
    The High Desert
    Posts
    3,604

    Default

    I agree with Turambar's recommendations. I will also suggest that the better the quality of the input, the better than quality of the results because most software can elaborate small details better than it can generate big-picture stuff. Also, expect that the results of most sims are unlikely to be "realistic", but are definitely likely to be "plausible" (that is, features will likely be self-consistent, but may bear only a passing resemblance to real-world places because sims tend to use too many of one kind of feature and too few of another).

    https://www.cartographersguild.com/s...ad.php?t=30645 is a similar question from ten years ago and I expect that the state of the art has no doubt advanced well beyond what was discussed there.

    Some examples of what one particular elderly piece of software (Wilbur) can do with sufficient fiddling around can be found by searching for "johnsondale" here at the guild. https://www.cartographersguild.com/a...chmentid=43440 is the original CSU Johnsondale map result for reference. Another example can be found at https://www.cartographersguild.com/s...ad.php?t=28052 with the high-resolution result at http://fracterra.com/wilburiax.jpg if you want to skip past the thread.

    Another common solution is to use collaging (stitching together real-world heightmap pieces). You can do this manually common image editing tools by slicing up existing DEMs and rotating/stitching them together (https://www.cartographersguild.com/s...ad.php?t=51301 has a discussion of this technique), but there are undoubtedly many software packages these days that can do a semi-automated result. About 20 years ago, Howard Zhou showed a result that used flow analysis and automated collaging to match the flow constraints, but I never saw a commercial result from it ( https://www.howardzzh.com/research/terrain/ is his project page ). It's been a while since I've looked too much at these kinds of techniques and it always required way too much talent and technique for my tastes.

    As what you want broadly comes under the heading of image synthesis and/or style transfer, I would expect that many of the "AI" image synthesis tools can get you started. This is especially true if the backing model will take an input image and let you say things like "convert this sketch of a map into a heightmap and replace the brown areas with plains, light blue areas with rivers, dark blue areas with ocean, yellow areas with hills, and gray areas with high mountains." Or something like that. I'm not what the kids are calling a "prompt engineer" (similar to a "sanitation engineer", I suppose) these days.

  5. #5

    Default

    Quote Originally Posted by Turambar View Post
    My recommendation would be either Wilbur or Gaea. There are some tutorials on here for both programs.
    Can Gaea cope with that sort of scale? From my searches, I thought it couldn't without having to tile things. Any experience of using Gaea with very large maps?

  6. #6
    Guild Artisan Turambar's Avatar
    Join Date
    Jan 2022
    Location
    Washington D.C.
    Posts
    557

    Default

    Quote Originally Posted by Amy Worrall View Post
    Can Gaea cope with that sort of scale? From my searches, I thought it couldn't without having to tile things. Any experience of using Gaea with very large maps?
    You certainly can, it just takes some adjustments. But Gaea can really do any scale from up close rocks to planetary heightmaps. However, for mapmaking purposes, I have found Wilbur is still much quicker for world scale maps. I often use a combination of the two.

  7. #7

    Default

    For Wilbur, do you know what a plausible maximum size in pixels is? It crashes if I try to do 1.5 million pixels across -- I know I don't necessarily need 1m scale for the high level map, but the more detailed I can make it the better. Also, how do I tell Wilbur how many metres each pixel represents? I assume that is necessary knowledge for e.g. erosion algorithms to work?

    I'm trying to decide whether to just bite the bullet and accept I'll be working on smaller sections at once and compositing in Photoshop, or whether I can get a tool that'll let me work on the whole thing all together.

  8. #8

    Default

    I did some experimenting. I can get to 21,000 pixels square, but I can't get to 25,000 pixels square without crashing.

    I saw in another thread that the erosion algorithms should look OK if each pixel is between 1 and 40 metres. If I'm to fit my whole map, I'll be outside that, but not by much. So maybe I could do some more standalone areas separately and composit them in Photoshop.

  9. #9
    Administrator waldronate's Avatar
    Join Date
    Mar 2007
    Location
    The High Desert
    Posts
    3,604

    Default

    [this one was supposed to go out yesterday, but it looks like I got distracted].
    A plausible size will always depend on what you're trying to do. If you want a physically-based simulation down to human scale, it's likely that you'll be very disappointed because the actual sim will need to run a couple of orders of magnitude higher than the scale you really want. I don't know of any such software. Fortunately, there is an out. A simple and easy out. First, I will pontificate a bit:
    Cartographer is ultimately the art of abstraction. Every map is done for a reason and for a client (even if that client is you) and is fixed in a specific medium. It will deliberately leave out things that don't support the reason for the map and will deliberately leave out things that the client doesn't want in there and will deliberately leave out things that can't be represented in the chosen medium. What does that mean? If you want a map of a country to show safe places to spend the night, then you probably aren't going to include much in the way of detail about the troglodyte race's pictographic representation of their perception of human-hobbit race relations unless the only safe places to stay are where there's a strong troglodyte-human-hobbit presence in the form a chain of "Ug's HoTEL" across the land. Similarly, if you're going to be drawing the map on orc hide using angel blood, there's a very good chance that you'll miss out the strong iridescence that's only possible using pigments derived from the vent scales of an aboleth.

    Knowing that you probably don't have fifty terabytes of memory (about what Wilbur would need to do its work at 1.5Mx0.75M pixel resolution) and aren't willing to wait on the order of a day or so for each algorithm to complete, then you probably should be willing to go for much lower resolution and accept that a lot of details are going to go missing. Wilbur is fundamentally a simple image processing program and human concepts like map projections and "units per sample" don't really figure into what it does for the most part. It also doesn't have important facilities like labeling or overlays (except in a very very crude sense) and you'll need to go to a third-party product for that sort of thing anyhow. What it does have are some algorithm parts that will generate plausible results if used carefully. Those tutorials I referenced above show the kinds of things that Wilbur does pretty well and you'll see that most of the results are missing some specific elements like lakes and all of the labels are done in other software.

    You should be able to pump out a good-looking heightmap with Wilbur, but it won't have a lot of Earth features like plate tectonics unless you put those in there manually. Wilbur is pretty good at elaboration from simple masks (https://www.cartographersguild.com/s...ad.php?t=25874 and https://www.cartographersguild.com/s...ad.php?t=51936 and https://www.cartographersguild.com/s...ad.php?t=30343 and https://www.cartographersguild.com/s...ad.php?t=31901 are examples), but results will tend to be plausible only within a fairly narrow range of scales and resolutions. I have a tendency to keep the final resolutions to 4000 or less pixels on a side because I lack patience. Some folks go higher. What you start with will very much affect what you get out ( https://www.cartographersguild.com/s...t=33087&page=2 shows some abuse I did to someone else's map and how the quality of the input directly affected the quality of the output ).

  10. #10

    Default

    Thanks for your response! I think I have a good handle on what Wilbur can bring to the party now, and I look forward to diving in further.

    To give some more background to my project:

    I am making maps for Empire LARP (a live action roleplay fest event held in England). My previous project was making maps of the field we play on, positioning and labelling all the tents. For this, I used OpenStreetMap data and the JOSM editor to put in the features, and wrote my own software to do things like position the labels, and do the actual render. I've built my own scripting language to handle rendering various layers of data, and all the data is kept as latitude/longitude points and polygons for as long as possible, before being projected onto a pixel position only at the output stage.

    This worked great for mapping the field, which is of course a real place in the real world and is relatively tiny.

    I'm now moving on to try and map the fictional world that the game runs in. The organisers have provided us with fantasy sketch map style maps, plus a lot of written description. My problem with these fantasy maps is they make the Empire look a lot smaller than it should be — word of God is that the Empire is 900 miles across, plus we know some things about neighbouring countries that we're at war with. We also know that we can assume the Empire is on an Earth-sized planet and roughly at the latitudes of Europe.

    Map-illustrated-superdetailed-MASTER-colour-e4-2017.png

    Another player has already overlayed the Empire land borders on to the Earth in order to give everything lat/lon coordinates. They've made their data set available to me, so I've taken that and made my existing custom software able to render it (which required relatively few changes, it turns out my map projection code is flexible enough for that! Although, currently I can only do the web-mercator projection… for something this big, I might want to consider other options.)

    mapsnippet.png

    So at the moment I'm working with vectors and paths, and doing projections myself. But I'd like to make a relief map. My original plan was to try and find some software that would directly generate e.g. mountain ranges in places where I put them. I looked at things like Gaea and WorldCreator -- I wouldn't mind paying for something, but nothing was _quite_ what I was looking for, and I had issues finding Mac compatible software. So my current plan is to roughly draw a height map in Photoshop (overlayed onto my output map, and based on the position of mountains and coast in the source map), and then process it with Wilbur. Then in the future when I render my whole map, I can use the processed height map as a background layer (probably with some relief shading).

    The one remaining thing I'm trying to decide is whether to just make the height map based on the web-mercator projection I'm currently using, or whether to write the code to enable other projections in my custom software first. Ideally I'd like my software to be able to read in the height map based on whatever projection I make it in, and map each pixel to lat/lon, so it can then output projection-independent maps all with valid heights. This requires I sit down and do some more maths!

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •