Image Downloader#
The ImageDownloader component is used in:
the LandscapeSpawner actor to download heightmaps (
HeightmapDownloader) and to create textures and decals (TextureDownloader),the LandscapeTexturer actor to download satellite (and other) images for your landscapes,
the
BasicImageDownloaderactor to simply download images.
Here are the sources that are supported by ImageDownloader. Feel free to suggest new sources on:
GitHub
and I will do my best to add them.
Image Source#
WMS#
You can download images from any WMS server using the Generic WMS source.
Enter the GetCapabilities URL of a WMS server, and then choose a layer.
Enter the MinLong (Left), MaxLong (Right), MinLat (Bottom), MaxLat (Top)
coordinates in the given coordinate system, as well as the width and height
of the image you want to download. To find coordinates, you can use the
DuckDuckGo link from the Details Panel to search for the correct
epsg.io map of the layer’s coordinate system.
These can also be set automatically from a Bounding Actor (see the Parameters Selection dropdown).
There are a few preset WMS servers in the ImageDownloader. If you know of a
WMS server that would be good to have here, please let me know!
IGN Heightmaps: Contains high resolution (1m per pixel) heightmaps for Overseas (e.g.
RGEALTI-MNT_PYR-ZIP_GLP_WGS84UTM20_WMSfor Guadeloupe) and European France (RGEALTI-MNT_PYR-ZIP_FXX_LAMB93_WMS). ChooseWidthto beMaxLong - MinLong, andHeightequalsMaxLat - MinLatto get the best possible resolution (everything as integers).SHOM: Contains hillshade elevation models, but no heightmaps.
USGS 3DEPElevation: Contains heightmaps for the US.
USGS Imagery: Contains satellite imagery for the US.
XYZ#
You can use any XYZ URL of the form https://url.to/images/{z}/{x}/{y}.
Then, by specifying a Zoom level and the minimum/maximum X and Y tiles,
the image downloader will download.
For servers using Slippy Tiles, you can use
the Slippy Tile Explorer
to find the tiles numbers corresponding to the area that you want to download.
These can also be set automatically from a Bounding Actor or using coordinates
(see the Parameters Selection dropdown).
If your server uses a convention different than Slippy Tiles, you should use
manual Parameters Selection, and you should uncheck
Georeference Slippy Tiles. Make sure that MaxY Is North is correctly
checked or unchecked depending on whether Y goes up or down when going north
in your data. Finally, add the coordinate system of your data.
Mapbox#
Mapbox is one particular XYZ server which is hard-coded. You need to provide
an API key (that you can obtain for free from a Mapbox account) that will
be used to download the tiles. Since Mapbox uses Slippy Tiles, the
Parameters Selection using a Bounding Actor or coordinates works correctly
here.
Viewfinder Panoramas#
Please make sure that you have 7Z installed if you want to use Viewfinder Panoramas.
Viewfinder Panoramas 1”: Highest resolution, around 30 meters per pixel. In an
ImageDownloader, choose “Viewfinder Panoramas 1” and enter the comma-separated list of rectangles (e.g. L31, L32).Viewfinder Panoramas 3”: Intermediate resolution, around 90 meters per pixel. In an
ImageDownloader, choose “Viewfinder Panoramas 3” and enter the comma-separated list of rectangles (e.g. L31, L32).Viewfinder Panoramas 15”: Lowest resolution, around 450 meters per pixel. In an
ImageDownloader, choose “Viewfinder Panoramas 15” and enter the comma-separated list of rectangles (e.g. 15-A, 15-B, 15-G, 15-H).
USGS 1/3”#
This is 1/3” or around 10 meters per pixel data for the United States.
Go to the USGS National Map Data Download Application.
In the Datasets tab, click “Elevation Products (3DEP)”. Unselect everything except “1/3 arc-second DEM” and “Current” underneath.
Zoom on the area for which you want to download heightmaps.
Click on “Search Products”.
In the “Products” tab, you can visualize the tiles that will be downloaded.
If you want all the tiles suggested here, click on the TXT button (not CSV) to download the list of links.
If you want only some of the tiles, add the ones that you want to your Cart, and click the TXT button here to download the list of links.
In the Details Panel of an
ImageDownloader, chooseUSGS One Thirdas a source, and enter the path to the TXT file on your computer.
swissALTI3D (©swisstopo)#
This is very high resolution data, 0.5 meter per pixel, for Switzerland. It uses EPSG 2056.
Go to the swisstopo website.
In Section “swissALTI3D - Access to geodata”, choose “Selection by rectangle”.
Zoom on the map to the area that you wish to download.
Click on “New rectangle”, and draw a rectangle in the area that you want to download.
Choose the resolution, 0.5m per pixel is the best resolution but will lead to heavy heightmaps.
Click on “Search”.
Click on “Export all links” and then on “File ready. Click here to download”.
In the Details Panel of an
ImageDownloader, chooseSwiss ALTI 3Das a source, and enter the path to the CSV file on your computer.
Litto 3D Guadeloupe#
Please make sure that you have 7Z installed if you want to use Litto 3D Guadeloupe. This is very high resolution data, 1 meter per pixel, for Guadeloupe. It uses EPSG 4559.
Go to the Litto 3D Guadeloupe website.
Click on “Télécharger”.
Click on the areas that you want to download.
Click on “Télécharger la sélection”.
Move all the 7z files that you have downloaded into a new folder.
In the Details Panel of an
ImageDownloader, chooseLitto 3D Guadeloupeas a source, and enter the path to the new folder on your computer.
Local File#
Enter the path to a georeferenced file on your computer as well as the coordinate system.
Local Folder#
Enter the path to a folder containing files named following the _x0_y0 convention,
as well as the coordinate system.
URL#
Enter an URL to a georeferenced heightmap, as well as the coordinate system.
Image Downloader Settings#
Source
Image Source Kind (
EImageSourceKind): Please select the source from which to download the images.Select A SourceIGN HeightmapsIGN SatelliteUSGS 3 DEP ElevationUSGS TopoUSGS ImagerySHOMAustralia LiDAR 5mGeneric WMSMapTiler HeightmapsMapTiler SatelliteMapbox HeightmapsMapbox SatelliteNextZen HeightmapsGeneric XYZNapoliViewfinder15Viewfinder3Viewfinder1Swiss ALTI 3 DUSGS One ThirdLitto3 D GuadeloupeLocal FileLocal FolderURL
Merge Images (
bool, defaultfalse): Merge all downloaded images into a single imageParameters Selection (
FParametersSelection)Capabilities URL (
FString)MapTiler Token (
FString): The MapTiler token can be set in the Editor Preferences, in Plugins -> Landscape Combinator.Mapbox Token (
FString): The Mapbox token can be set in the Editor Preferences, in Plugins -> Landscape Combinator.NextZen Token (
FString): The NextZen token can be set in the Editor Preferences, in Plugins -> Landscape Combinator.Mapbox 2x (
bool, defaultfalse): Add @2x to the Mapbox query URL, tiles become 512x512 pixels instead of 256x256 pixels. This counts for more API requests than usual.XYZ URL (
FString)WMS X Is Long (
bool, defaulttrue)Viewfinder15 Help (
FString)Viewfinder3 Help (
FString)Viewfinder1 Help (
FString)Litto3 D Help (
FString)Swiss ALTI3 D Help (
FString)USGS One Third Help (
FString)Local File Path (
FString): Enter your C:\Path\To\MyHeightmap.tif in GeoTIFF formatCRS (
FString, default"EPSG:4326"): Enter the name of the CRS of your file(s) (e.g. EPSG:4326)Local Folder Path (
FString): Enter C:PathToFoldercontaining heightmaps following the _x0_y0 conventionURL (
FString): Enter URL to a heightmap in GeoTIFF formatXYZ Name (
FString): Simple name for the downloaded files.WMS Title (
FString)Viewfinder Tiles String (
FString)Litto3 D Folder (
FString): Enter C:PathToFoldercontaining 7z files downloaded from https://diffusion.shom.fr/multiproduct/product/configure/id/108Swiss ALTI3 D List Of Links (
FString): Enter C:PathToListOfLinks.csv (see documentation for more details)USGS One Third List Of Links (
FString): Enter C:PathToListOfLinks.txt (see the help above, or the documentation for more details)XYZ Format (
FString): File format of the downloaded files (e.g. tif or png or xyz or xyz.gz). If the format contains a dot, the tile will first be uncompressed using 7-Zip.WMS Name (
FString)Filter Degrees (
bool, defaultfalse): The tiles of Viewfinder Panoramas 1” and 3” contain subtiles, use this option if you want to filter them.Use5m Data (
bool, defaultfalse): Check this if you prefer to use the less precise 5m data instead of 1m dataWMS Abstract (
FString)Filter Min Long (
int, default0)Skip Extraction (
bool, defaultfalse): Check this if the files have already been extracted once. Keep it checked if unsure.XYZ Zoom (
int, default10)WMS Help (
FString)Filter Max Long (
int, default0)WMS CRS (
FString): This should not (almost never) be modified manually, as the WMS server may not supported the given CRS. There are rare cases where the parsed CRS is not correct, and in that case the CRS can be edited to the correct value (as found in the WMS server capabilities).Filter Min Lat (
int, default0)WMS Search CRS (
FString)Filter Max Lat (
int, default0)XYZ Min X (
int)XYZ Max X (
int)XYZ Min Y (
int)WMS Min Allowed Long (
double)XYZ Max Y (
int)WMS Max Allowed Long (
double)WMS Min Allowed Lat (
double)WMS Max Allowed Lat (
double)Max Y Is North (
bool, defaultfalse): For XYZ or Slippy Tiles, MaxY is usually South, so you can leave this unchecked.WMS Min Long (
double): Enter the minimum longitude of the bounding box (left coordinate). Greater or equal than WMS_MinAllowedLong.Napoli Min Long (
double): Enter the minimum longitude of the bounding box (left coordinate) using EPSG:32633.Georeference Slippy Tiles (
bool, defaulttrue): Add georeference to downloaded files using the Slippy Tile / XYZ convention.WMS Max Long (
double): Enter the maximum longitude of the bounding box (right coordinate). Smaller or equal than WMS_MaxAllowedLong.Napoli Max Long (
double): Enter the maximum longitude of the bounding box (right coordinate) using EPSG:32633.XYZ CRS (
FString): The coordinate system used by the downloaded files.WMS Min Lat (
double): Enter the minimum latitude of the bounding box (bottom coordinate). Greater or equal than WMS_MinAllowedLat.Napoli Min Lat (
double): Enter the minimum latitude of the bounding box (bottom coordinate) using EPSG:32633.Allow Invalid Tiles (
bool, defaulttrue): Ignore errors when the XYZ provider has missing tilesWMS Max Lat (
double): Enter the maximum latitude of the bounding box (top coordinate). Smaller or equal than WMS_MaxAllowedLat.Napoli Max Lat (
double): Enter the maximum latitude of the bounding box (top coordinate) using EPSG:32633.WMS Max Width (
int, default0): Maximum allowed width from the WMS provider.WMS Max Height (
int, default0): Maximum allowed width from the WMS provider.Auto Set Resolution (
bool, defaultfalse): Use the best resolution when downloading image from WMSWMS Single Tile (
bool, defaulttrue): If true, a single tile with the required dimensions will be downloaded. If false, multiple tiles may be downloaded, each tile having maximum dimensions WMS_MaxTileWidth x WMS_MaxTileHeight. The number of tiles is determined by the user-given resolution.WMS Max Tile Width (
int, default5000): Enter desired width for the downloaded heightmap tiles from the WMS API. Smaller or equal than WMS_MaxWidth.WMS Max Tile Height (
int, default5000): Enter desired height for the downloaded heightmap tiles from the WMS API. Smaller or equal than WMS_MaxHeight.WMS Resolution Pixels Per Unit (
double, default1): Enter the number of pixels per units (the higher the number, the higher the resolution).Enable XYZ Parallel Download (
bool, defaultfalse)Enable WMS Parallel Download (
bool, defaultfalse)
Remap
Remap (
bool, defaulttrue): Some sources use -99999 as no data. Check this option to remap -99999 to -10 (or any other mapping).Hide No Data Flag (
bool, defaulttrue): Remove NoData flag from downloaded imagesOriginal Value (
float, default-99999)Transformed Value (
float, default-10)
Preprocessing
Preprocess (
bool, defaultfalse): Check this option if you want to run an external binary to prepare the heightmaps right after fetching them.Preprocessing Tool (
UExternalTool)
Resolution
Scale Resolution (
bool, defaultfalse): Check this if you wish to scale up or down the resolution of your heightmaps.Precision Percent (
int, default100): When different than 100%, your heightmap resolution will be scaled up or down using GDAL.
Adapt To Landscape
Adapt Resolution (
bool, defaultfalse): Check this if you want to resize the image to match the TargetLandscape’s resolution.Target Landscape (
ALandscape)
Crop Coordinates
Crop Coordinates (
bool, defaultfalse): Check this if you want to crop the coordinates following the bounds given in the parameters selection or a CroppingActor. This is typically not needed for WMS sources where you choose the coordinates upfront.Crop Following Parameters Selection (
bool, defaulttrue)Cropping Actor (
AActor)
Basic Image Downloader Settings#
Basic Image Downloader
Name (
FString, default"ImagesName")Image Downloader (
UImageDownloader)
Parameters Selection Settings#
Source
Parameters Selection Method (
EParametersSelectionMethod, defaultManual): Whether to enter coordinates manually or using a bounding actor.ManualFrom EPSG4326 BoxFrom EPSG4326 CoordinatesFrom Bounding Actor
Parameters Bounding Actor (
AActor): Select a Cube (or any other actor) that will be used to compute the WMS coordinates or XYZ tiles. You can click the “Set Source Parameters From Actor” button to force refresh after you move the actorMin Long (
double, default0)Max Long (
double, default0)Min Lat (
double, default0)Max Lat (
double, default0)Longitude (
double, default0)Latitude (
double, default0)Real World Width (
double, default200): Approximate real-world size in metersReal World Height (
double, default200): Approximate real-world size in meters