TerraLand plugin contains of multiple components which use GIS data & coordinates to load & create Photo-Realistic Terrain from any part of the Earth within a few clicks.
Connects to Elevation & Satellite Imagery servers and download needed data for user defined area of interest along with many other options to adjust resolutions and other settings.
Global Elevation & Satellite Imagery support for downloading
Highest available Elevation data resolutions ranging from over 30 meters in most of the Earth areas to approximately 3 meters in some limited areas. More Info
Highest available Satellite Imagery provides 1 meter or better Satellite and Aerial Imagery in many parts of the world & lower resolution satellite imagery worldwide. More Info
Bathymetry data included to create above & below (negative values) sea-level heights mixed for the final heights. More Info
Multi-Threading operations for faster & synchronous job handling
Create, update & edit terrains right within the scene
Multiple or single terrain chunk support for both Elevation & Satellite Imagery
Built-in Geo-Coder to search any location on Earth
Built-in interactive map for area selection & definition
User-Friendly area definition by real-world metrics or geo-coordinates
Heightmap/Elevation data downloader with complete resolution flexibility & other various options More Info
Satellite Imagery downloader with lots of options to define resolution quality & import settings More Info
Save Elevation & Imagery data for later usage in projects or external GIS software
Can save elevation data in 3 formats of ASCII Grid, Raw & Tif along with projection (.proj) files
Satellite Images will be saved in Jpeg format with compression quality modifier
Automatic failed images downloader due to connection drops during the downloads
Predefined resolution presets for elevation & imagery to automatically set final terrain quality
Generated Terrain(s) can have up to 8192 heightmap resolution to override Unity’s limitation and achieve high resolution terrain surfaces
Each downloaded Satellite Image/Texture can have up to 4096 resolution and unlimited resolution for the entire terrain(s) as much as GPU can handle
Elevation/Vertical Exaggeration modifier to set final heights. TerraLand automatically rescales terrains based on Real-World area size (value of 1)
Preset Management to save any user adjustments made in the UI
Run-Time “Terrain Neighbors” script to handle terrain neighboring during the gameplay
Terrain
A collection of multiple operations needed for terrain management in the scene.
Loads any previously downloaded elevation data files of ASCII, Raw & Tif
Applies elevation data to new or existing terrains regardless of the data resolution or terrain(s) resolutions through complex resampling operations
Sets terrain neighbors if lost or doesn’t exist at all for seamless LOD & Tessellation between terrain chunks
Splits selected single terrain to the user defined grid size
Smoothen out terrain heights if there are jagged edges on the surface
Exports elevation data in 2 formats of ASCII & RAW from the selected terrain(s)
Image Tiler which takes a folder containing satellite images in project and textures corresponding terrain(s) More Info
Terrain To Mesh converts selected terrain(s) to mesh and optionally places it in the scene
Mesh To Terrain takes a 3D model/mesh and outputs a terrain with selected resolution in the scene
Converts DMS (Degree, Minute, Second) to DD (Decimal Degrees) coordinate systems and vice versa
MapsMaker
A newly introduced component to do image processing on satellite images and maps. It takes a satellite image and outputs 3 map types of Shadowless map, Colormap & LandCover (Splatmap).
A shame the trees and clouds are baked in, it looks good on the surface but breaks down when you get closer. I can see this being much nicer for planets and such
Usually satellite images which data sources produce are cleared from clouds and captured when the sky is clear and sunny. In TerraLand’s online demo which you can check it in the 1st post, none of the 5 textures include clouds in them, those clouds you see in the screenshots are particles.
Also the next version of TerraLand comes with a new component “Terrain Enhancer” which includes a special shader to create a hybrid terrain containing of a satellite image as the base and colormap plus 4 tiling images as detailmaps to represent different environment areas such as rock, sand, grass and etc. in close distances based on a triplanar projection.
However using the above mentioned shader solves a lot of unnecessary subjects from terrain textures, you can still populate your terrain by 3D items to put everything (trees, buildings, streets and …) in their real place and create realistic scenes. Check out our 2 other products TerraTreesTerraCity and check the online demos or download the project scenes from here to see what can be achieved in action together with TerraLand in Unity Terra +3.
Interesting stuff.
How well does this work for close up things? I’m looking to create stuff for a race game. Getting accurate results of locations such as Trollstigen(Norway mountainroad) and landscape(height etc, not the buildings) in the center of San Francisco is very important to me.
Having details in close up views is completely depending on your own setup and number of asset items.
Talking about natural landscapes which involves terrain heights, terrain textures and vegetation without needing to create complex scenes like urban areas that include buildings and such, I can say that you can achieve as much as detailed you are looking for to get a realistic scene, of course if you have good looking assets.
There is no limitation in either TerraLand which obtains the latest public global elevation data available from NASA (Manually in the current version) or TerraTrees which manages your terrain vegetation giving you a lot of options to place trees using geographical or user created maps. The next version of TerraTrees will also support the placement of terrain details (grass, detail meshes such as rock).
Lastly, there are 2 occasions based on your game/scene type, top views close up views. If player can navigate in both distances at the same time so this is the most difficult case as you have to keep a lot of assets viewable from far distances as FOV covers a big area while still having so much details on the terrain surface not to break the visuals in the close up view distances. This case needs a lot of LODing and generally Optimizations involved.
For race type games, as the player is always on the ground, so you only need to keep your details on the ground and around the race way. I’m not willing to go into details as you may know them better, just wanted to rewrite some general tips.
Also as we already mentioned in the forums, we are going to release a new product which generate roads and streets from OSM data in the upcoming months so stay tuned with us and register on our website.
I am not looking for a 1 click solution that places everything for me, but having the correct land height as detailed as possible would help a lot and save a tremendous amount of work.
The game would be a close-up view behind the car (think NFS, GT, Forza etc).
I really want the locations to be as accurate as can be, which is why I was looking at a solution such as this
It would be very useful especially for mountain areas, as getting the correct height values for such a track is a huge part of such a location.
I simply wondered how accurate the terrain ends up being. I tried checking the live demo on your website and the land is pretty bumpy at the area where it looks like there should be a road.
Judging from this, it may not be accurate enough (or need lots of adjusting) to be used as a source for tracks.
Any clarification on that part would be highly appreciated.
Either way, I’ll keep tracking this and your upcoming plugin, sounds interesting
As mentioned before, the elevation data is the most accurate public data available. The SRTM data is available as 3 arc second (approx. 90m resolution) DEMs globally and 1 arc second (approx. 30m resolution) in USA and some other countries. The vertical error of the DEM’s is reported to be less than 16m.
Here what you are concerning about is called the “Elevation Exaggeration” (Vertical Height Factor) which represents the value of generated heights in our terrain. I’m starting to think that we have chosen a wrong location for our simulation demos as it’s a special shaped valley which everyone thinks it’s unreal and so much bumpy. check out the attached zip file and open the included kmz file in Google Earth to see that this place really exists the way it is in demos.
By default, Terraland will generate terrain heights with elevation exaggeration value of 1 which means the heights are as they are in real world and there are no extra ups and downs in the heights, this vertical factor that is equal to Terrain Height (y scale) in Unity terrain’s “Set Resolution” settings is easily adjustable to any value which you may wish for in order to rise or lower the whole terrain heights.
But what matters here is that because even the highest resolution is approximately 30 meters and we are limited to this data for the heights, so the land is not that smooth to correctly place road segments on it. The best workaround to this issue is that you have to flatten the heightmap of terrain below your road segments so there won’t be any unusual bumpiness where there are roads, streets or tracks.
Since the downloader does not work atm, what options do I have to download data manually using http://viewer.nationalmap.gov/viewer/ ?
As in, what files does Terra Unity accept for importing height data. GeoTiff? Img? ArcGrid?
Terraland is useless for me, if it can not download, or important any files from there. I am fine with downloading them manually. But for that I have to know which files I have to download/can download and Import into Unity.
My Current Process of downloading GeoTiff data from the Nationalmapviewer, putting that into 3Dem and then exporting that to Terragen and exporting from Terragen to Unity is just too much hassle. Besides that, I can only use GeoTiff in 3Dem which is not available everywhere in the US…
Below is a quick tutorial about importing and exporting a heightmap using SRTM 4.1 and Global Mapper to prepare it for your project in Unity using TerraLand plugin. No need to mention that you can still do a lot of other things to setup your data in Global Mapper.
Select area of interest by available options and export either GeoTiff or ArcInfo ASCII files which are compressed zip files
Import downloaded zip file in Global Mapper
In Global Mapper change the shader to “Gradient Shader”
In Global Mapper disable “Hill Shading”
Each downloaded heightmap tile in SRTM 4.1 covers 5 x 5 girds of Latitude Longitude geographical coordinates
Each downloaded heightmap tile’s resolution in SRTM 4.1 is 6000 x 6000 pixels
As maximum heightmap resolution in Unity is 4096 so we have to make a selection in loaded data, one advantage of working with raster data is to change the resolutions as desired. A workaround is to export all loaded data which will be mentioned in the next steps, then open it in image editing programs such as Photoshop and resize it to 4097 which gives about 0.7 of the original resolution. Another way is to resize it to 6147 and chunk it up to 3 x 3 grids which gives us 9 image tiles of 2049 to export, in this case we have about 0.02 of data loss in resolution. If you need more accurate results for your export continue with next steps.
There are 2 ways to select an area in your loaded data, one is to Create Area by “Digitizer Tool” and the other is Gridding option upon export settings.
Using Digitizer Tool, right click and select “Create Area/Polygon Features” then one of these options as you desire: “Create Rectangular/Square Area”, “Create Rectangular/Square Area (Specify Coordinates)” “Create Square Areas of Fixed Ground Area”. You can then use Digitizer Tool to move your Created Area. From the top menu select File → Export → Export Raster/Image Format → select BIL/BIP/BSQ File format → in “Options” tab select “Grayscale Imagery” in Format section → in “Export Bounds” tab select “Crop to Selected Area Feature(s)”.
Using Export Options, from the top menu select File → Export → Export Raster/Image Format → select BIL/BIP/BSQ File format → in “Options” tab select “Grayscale Imagery” → in Format section in “Gridding” tab select “Specify Individual Grid Cell Pixel Size” and insert desired resolution which is a power of 2 + 1 number.
When your data has been exported just change its format from “.bil” to “.raw” by renaming the file. This is the ordinary .raw file which you can open in image editing softwares to apply final changes if needed to finally export a 16 bit .raw image file.
After applying editings on your .raw heightmap if needed, import it in your project in Unity. Bring up TerraLand-Terrain and drag drop the heightmap file in “HEIGHTMAP” field in “TERRAIN GENERATOR” section. The rest of the procedure is based on your settings for the generating terrain.
Because SRTM DEM files doesn’t contain Bathymetric data so normally when you import downloaded DEM files in Global Mapper, there are void areas in the data where there is big water areas (such as oceans, seas big rivers) and this will cause height representation color issues when you export a part of data. Whatever color that is set as the background in Global Mapper, considers to be the elevation and it’s wrong, so if it’s white you may end up with the highest elevation in void (water) areas. You can set the background color to black or whatever grayish color but again in the end you won’t get exact results even after struggling with the colors. The above mentioned tutorial and steps work correctly if there aren’t any void areas in data.
I have to inform you that because of the high demand in the recent days, there will be a Beta version available for the ones who has purchased the current version of TerraLand and not to mention that when you have this beta version you don’t need to go through above mentioned steps and you will easily end up with a terrain that is automatically generated with correct shape and heights only by choosing a center point location and a few clicks to set up desired settings.
For more info about the beta version please register on our site and when you purchase the current version, we will send you the beta one.
thank you for your quick response. Thats great, I am sure I can live with that workflow, its not ideal, but atleast we can get the data into the game
When do you expect your Beta to launch?
Sorry for the late reply. The beta version is already released and will be sent upon request for the people who purchased current TerraLand version form our webstore. Here are some info about this plugin.
The GUI and features are going to be improved a lot. Everything in GUI is simple and straight to easily get a photorealistic terrain of desired location. It was never easier than this before.
Load the “Terrain Generator” from Unity’s Terrain menu
Create a new Terrain and drag drop it in Terrain filed of Terrain Generator
Select a point on Earth and insert Geo-Coordinates (Decimal Degrees) of that point in LATITUDE LONGITUDE fields (For example you can search the names of world’s famous locations in Google and add “lat long” at the end of your keyword to get its Geo-Coordinates)
Select the Size of the Terrain which will be altered
Select the Resolution of the generating terrain to adjust the covering area (Changing resolution won’t affect terrain quality as elevation data resolution is always the same, instead it specifies terrain area’s boundaries and metrics. You can see Top, Left, Bottom Right coordinates of terrain boundaries and also the covering area size in real world)
Check POWER OF TWO to generate the terrain in proper square size or uncheck this option to specify an arbitrary non power of two value of resolution (As most Terrain Systems including Unity need PO2 heightmap resolutions to properly generate terrain, it’s recommended to leave this option checked, however if you don’t want the resolution to be a PO2 you will end up with flat zero height areas on your terrain)
Check “GENERATE FROM CENTER OF TILE” to generate the terrain from the center of the downloaded elevation data regardless of inserted coordinates in Latitude/Longitude fields (Sometimes the location you choose is near topmost, leftmost, bottommost or rightmost of the downloaded data, in this case when you press “GENERATE TERRAIN” button, it first analyses terrain bounds to see if it exists in the data. If it’s out of bounds you will be notified by a warning and terrain generation will be stopped. You either have to change specified location or check this option to take data’s center point as our specified point)
Select server type for the downloading data (The “HTTP” “FTP” servers are natively hosted by NASA)
You can set the cache folder for downloading elevation data inside a folder in your project so that Terrain Generator can read write the data in that location (By default the cache folder is Assets/TerraLand/Cache)
When you are satisfied with the settings you have made, press “DOWNLOAD DATA” button to start downloading of elevation data (You will be notified if needed data is already available in the specified cache folder)
When you have your elevation data ready, press “GENERATE TERRAIN” and the terrain will be generated based on your specified settings
Turn on “EDIT TERRAIN HEIGHTS” option to change the whole terrain heights in real-time (Using this option on terrains with usually more than 1024 resolution will cause Unity to slow down so take cautions about this. Heights will be updated only when the mouse pointer is on the Elevation slider or field)
Satellite Image Downloader
Select the resolution of the downloading Satellite Image
Press “GET SATELLITE IMAGE” to start downloading of the terrain area’s satellite image based on specified settings and it will automatically texture the terrain when the image is downloaded
What are the source and max resolution of the satellite images?
Asking about the source because I would need to inspect the quality of the area I’m interested in.
Note: We have been asked so many times about TerraLand satellite imagery source and its copyrights. As you know many plugins and softwares use Bing or Google Maps as their imagery source for publishing and offline data usage which is illegal unless you own a premium license. Obviously the data isn’t free as they spend a lot of money on capturing them and apparently they provide much better imagery resolution for some areas in comparison to ESRI overall while ESRI has better quality in some areas also. We have chosen ESRI because it’s a public service, of course it’s holding its copyrights but provided in a more public and free to use condition. Similar question has been answered in World Imagery" - can I use it? and as you see because ESRI uses multiple data sources so it’s hard to tell the exact condition in different areas. Also TerraLand takes the downloaded image as the base a “reference” texture for terrain colormap used in far viewing distances and then by mixing it with “TerraLand-Enhancer” you add repetitive image tiles to bring details as the final visuals. This reference image can also be a Topo Map.
However, if you can prepare your own satellite images for the area of interest you can still use TerraLand-Maps to texture your terrain and place satellite images in their real world positions as described in TerraLand Maps Introduction. Check out the Online Help section of our website to explore products’ capabilities.
The Beta version has improved a lot and is continuing, some of the new features right within TerraLand GUI are as follows:
Search any address or location on Earth for terrain generation
Get geo-coordinates (Latitude/Longitude) of the searching location
Get Address of the inserted geo-coordinates
Image Preview of specified location for up to 1024 resolution from Google Maps
ASCII grid file reader for loading customized user created elevation data files
Preset Management to save load specified settings
For some reason I can’t give any screenshots for now here in forums but you can get the plugin as soon as your purchase made.