Terrain Processor: Introduction: Difference between revisions
No edit summary |
No edit summary |
||
Line 13: | Line 13: | ||
Arma series benefit from the authentic scale of environment, and it is natural to use digitized map data ( | Arma series benefit from the authentic scale of environment, and it is natural to use digitized map data (geographic data), commonly used in [https://en.wikipedia.org/wiki/Geographic_information_system geographic information systems] (GIS) as basis for map design work. Terrain Processor was created in order to allow Arma devs to use some geographic data to quickly prototype terrains and automate some (otherwise tedious) tasks, e.g. placing several hundred thousand trees in a forest. When set up correctly, the existing modules may help map designer to save plenty of work time by populating map with forests, linear vegetation or other randomly placed objects, by leveling terrain under roads or adding small randomization to the terrain mesh. Terrain Processor does not replace manual work and "artistic" fine tuning, but it may serve map designer as a tool for rapid creation of a solid basis for their manual editing. | ||
Line 19: | Line 19: | ||
Please note that Terrain Processor comes without much preview tools, which requires some empiric testing and iterative setting tweaks.The manual comes with sample TP project data illustrating the tool's basic setup, and with tutorials guiding community map designers through some basic pipelines of geographic data usage in an Arma map. | Please note that Terrain Processor comes without much preview tools, which requires some empiric testing and iterative setting tweaks. The manual comes with sample TP project data illustrating the tool's basic setup, and with tutorials guiding community map designers through some basic pipelines of geographic data usage in an Arma map. | ||
== Getting started == | == Getting started == | ||
=== Project === | === Project === | ||
Upon starting | Upon starting TP, user is prompted to either open existing project or set up a new one. Either double-click on an existing project in the list, search for other existing project using the "Open other project" button, or "Create new" project. | ||
Line 29: | Line 29: | ||
There's a | There's a check-box to the left of each task line. The checked tasks are those being processed when processing is started, which will be covered by the '''Exporting data section'''. | ||
Line 35: | Line 35: | ||
TP is using relative paths for all the file dependencies, so that it's easy to transfer projects and their data. It is recommended to store all the relevant data and project in a single folder with | TP is using relative paths for all the file dependencies, so that it's easy to transfer projects and their data. It is recommended to store all the relevant data and project in a single folder with sub-folders organized to user's liking. | ||
=== Main Interface === | === Main Interface === | ||
Line 44: | Line 44: | ||
'''Project functions (orange):''' | '''Project functions (orange):''' | ||
* New project - Sets up a new blank project. | * New project - Sets up a new blank project. | ||
* Open project - | * Open project - To open an existing project. | ||
* Save project - Saves current project. | * Save project - Saves current project. | ||
* Export settings - Opens dialog allowing to set up path to results folder and * select desired output formats (LBT, SHP). | * Export settings - Opens a dialog allowing to set up path to results folder and * select desired output formats (LBT, SHP). | ||
'''Task functions (blue):''' | '''Task functions (blue):''' | ||
* Add task - Adds a new task to the end of the queue. | * Add task - Adds a new task to the end of the queue. | ||
Line 60: | Line 60: | ||
=== Tasks check vs. selection === | === Tasks check vs. selection === | ||
There is a difference between checking or selecting a task. Selection is done using LMB and it's used for tasks manipulation (e.g. duplication, deletion, reordering), while checking is done over a | There is a difference between checking or selecting a task. Selection is done using LMB and it's used for tasks manipulation (e.g. duplication, deletion, reordering), while checking is done over a check-box on the beginning on each task line, used to determine whether a task will be processed after hitting the "Run" button. | ||
Line 86: | Line 86: | ||
'''Objects''' | '''Objects''' | ||
* You can manually add object names for selected task. The names of objects must be equal to <u>the names of Object Templates in the Terrain Builder project</u>. Every task can has different object prototype parameters. | * You can manually add object names for the selected task. The names of objects must be equal to <u>the names of Object Templates in the Terrain Builder project</u>. Every task can has different object prototype parameters. | ||
'''Parameters''' | '''Parameters''' | ||
Line 245: | Line 245: | ||
===Area=== | ===Area=== | ||
Input of these modules are polygon Shapefiles, and these modules work within boundaries of the polygon geometries. | Input of these modules are polygon Shapefiles, and these modules work within boundaries of the polygon geometries. | ||
* Area: High-density Cluster - Creates clusters of particular objects in a densely covered area, e.g. spots of spruce and beech in a forest. | * [[Terrain Processor: Area: High-density Cluster|Area: High-density Cluster]] - Creates clusters of particular objects in a densely covered area, e.g. spots of spruce and beech in a forest. | ||
* Area: Local Maximum Cluster - Creates clusters of objects in local terrain maximums; ASCII DEM required. | * [[Terrain Processor: Area: Local Maximum Cluster|Area: Local Maximum Cluster]] - Creates clusters of objects in local terrain maximums; ASCII DEM required. | ||
* Area: Local Minimum Cluster - Creates clusters of objects in local depressions; ASCII DEM required. | * [[Terrain Processor: Area: Local Minimum Cluster|Area: Local Minimum Cluster]] - Creates clusters of objects in local depressions; ASCII DEM required. | ||
* Area: Low-density Cluster (circle) - Creates roughly circular clusters of objects in sparsely populated areas, e.g. trees in savannah. | * [[Terrain Processor: Area: Low-density Cluster (circle)|Area: Low-density Cluster (circle)]] - Creates roughly circular clusters of objects in sparsely populated areas, e.g. trees in savannah. | ||
* Area: Low-density Cluster (strip) - Creates prolonged circular clusters of objects in sparsely populated areas. | * [[Terrain Processor: Area: Low-density Cluster (strip)|Area: Low-density Cluster (strip)]] - Creates prolonged circular clusters of objects in sparsely populated areas. | ||
Area: Random - Simple random object placer, useful where no extra occurence rules are required. | * [[Terrain Processor: Area: Random|Area: Random]] - Simple random object placer, useful where no extra occurence rules are required. | ||
===Line=== | ===Line=== | ||
Input of linear Shapefiles, with the modules placing objects along the linear geometries. | Input of linear Shapefiles, with the modules placing objects along the linear geometries. | ||
* Line: Random - Places objects randomly in certain distance interval from a line. | * [[Terrain Processor: Line: Random|Line: Random]] - Places objects randomly in certain distance interval from a line. | ||
* Line: Regular - Places objects in regular interval in certain distance from a line. | * [[Terrain Processor: Line: Regular|Line: Regular]] - Places objects in regular interval in certain distance from a line. | ||
* Line: Sparse Cluster - Randomly places objects in clusters along a line. | * [[Terrain Processor: Line: Sparse Cluster|Line: Sparse Cluster]] - Randomly places objects in clusters along a line. | ||
* Line: Nodes Objects - Places objects on polyline nodes. | * [[Terrain Processor: Line: Nodes Objects|Line: Nodes Objects]] - Places objects on polyline nodes. | ||
===Point=== | ===Point=== | ||
Input of point Shapefiles, with the modules placing objects on the point geometries. | Input of point Shapefiles, with the modules placing objects on the point geometries. | ||
* Point: With Rotation - Places objects on points with random or defined rotation. | * [[Terrain Processor: Point: With Rotation|Point: With Rotation]] - Places objects on points with random or defined rotation. | ||
===Heightmap=== | ===Heightmap=== | ||
Plugins for processing ASCII DEMs, with a map project-sized terrain model being its main input and output. | Plugins for processing ASCII DEMs, with a map project-sized terrain model being its main input and output. | ||
* Heightmap: ASCII DEM Convert - Conversion tool for ASCII DEMs in Geodetic coordinates (e.g. WGS84 coordinate system) in degrees to UTM (in meters). | * [[Terrain Processor: Heightmap: ASCII DEM Convert|Heightmap: ASCII DEM Convert]] - Conversion tool for ASCII DEMs in Geodetic coordinates (e.g. WGS84 coordinate system) in degrees to UTM (in meters). | ||
* Heightmap: Perlin Noise - Random noise added to the ASCII DEM in the extent of polygon mask. Practical for making e.g. rugged terrain in forested areas. | * [[Terrain Processor: Heightmap: Perlin Noise|Heightmap: Perlin Noise]] - Random noise added to the ASCII DEM in the extent of polygon mask. Practical for making e.g. rugged terrain in forested areas. | ||
* Heightmap: Road Integration - Levels the terrain under the roads and smoothens the terrain cells in the vicinity of the flattened areas. | * [[Terrain Processor: Heightmap: Road Integration|Heightmap: Road Integration]] - Levels the terrain under the roads and smoothens the terrain cells in the vicinity of the flattened areas. | ||
===Mask=== | ===Mask=== | ||
Special section currently containing a single plugin for masking object occurence in a project. | Special section currently containing a single plugin for masking object occurence in a project. | ||
* Mask: Area - Removes all objects in the extent of polygon shapefile mask from Features Database. Can be used multiple times in single project, useful to mask areas of e.g. water bodies, roads or settlements instead of manually erasing their extent from the shapefiles used for generating objects. | * [[Terrain Processor: Line: Mask: Area|Mask: Area]] - Removes all objects in the extent of polygon shapefile mask from Features Database. Can be used multiple times in single project, useful to mask areas of e.g. water bodies, roads or settlements instead of manually erasing their extent from the shapefiles used for generating objects. | ||
* [[Terrain Processor: Line: Mask: Line|Mask: Line]] - Removes objects closer to line then given distance. You can use it for removing trees on roads, ... | |||
<!-----------------------------------------------------------> | <!-----------------------------------------------------------> |
Revision as of 09:41, 10 August 2015
IntroductionTerrain Processor is application for making mass changes and additions to Arma terrains edited in Terrain Builder, focused primarily on fast object population of extents of areal or linear topologies. Long story short, user can use this tool to add thousands of objects to an existing Arma terrain project based on geographic data. Outputs of Terrain Processor need to be imported to Terrain Builder. It is practical to keep the tools separated, so that both can be updated, fixed and tweaked independently and with more flexibility.
Getting startedProjectUpon starting TP, user is prompted to either open existing project or set up a new one. Either double-click on an existing project in the list, search for other existing project using the "Open other project" button, or "Create new" project.
Main InterfaceThere are couple of icons on the toolbar over the task list table: Project functions (orange):
Task functions (blue):
Task interaction (grey):
Processing (green): Start processing - TP processes all checked tasks and creates desired output * files. User is prompted to select the outputs. Tasks check vs. selectionThere is a difference between checking or selecting a task. Selection is done using LMB and it's used for tasks manipulation (e.g. duplication, deletion, reordering), while checking is done over a check-box on the beginning on each task line, used to determine whether a task will be processed after hitting the "Run" button.
Something you should know: Features DatabaseAll created objects are inserted into Features database. After all tasks are completed, content of Features Database is saved into LBT and/or SHP file(s). The database is a memory construct not represented by any data. Terrain Processor prevents clipping of inserted objects by checking with the Features Database content produced in a single queue of processed Tasks. Most modules use "minimum distance" parameter to prevent the placement of objects closer than the given value.
Setting up a taskAdding and managing tasksTask can be added using a toolbar button (see the Main interface section above). Upon adding a task, dialog is opened to determine which Module should be used for the task. Once a task is set up, it is required to fill in required values and variables in order to to make it functional. Task settings are available upon its addition to the project, and can be accessed and edited anytime later by double-clicking LMB on a particular task line. Task settingsAll tasks have almost same settings, split into several tabs. Most modules require some geographic data as input, and some additional parameters to be set. These parameters can be either set up in the task setting interface, or read from a database file (which can be either part of a Shapefile, or a separate DBF file referenced in the task settings).
Objects
Parameters
Shapefile
DEM files
Notes
Exporting dataWith several tasks set, it is possible to export the LBT file importable to Terrain Builder by clliking the RUN icon. User will be prompted to select the output file; then a dialog with progress bar and processing log appears. Once all the tasks are finished, output files are saved and user needs to close the dialog manualy.
Plugin / Modules Database ParametersOverview of the Plugin parameters, added by any available means in TP (manual input, Shapefile database, related database).
Plugins / ModulesAreaInput of these modules are polygon Shapefiles, and these modules work within boundaries of the polygon geometries.
LineInput of linear Shapefiles, with the modules placing objects along the linear geometries.
PointInput of point Shapefiles, with the modules placing objects on the point geometries.
HeightmapPlugins for processing ASCII DEMs, with a map project-sized terrain model being its main input and output.
MaskSpecial section currently containing a single plugin for masking object occurence in a project.
|
What the heck is...
Geographic data
Data formats used to represent some geographic features. there can be vector data (abstracting the reality in forms of polygons, lines and points) or raster data (e.g. aerial photos). Geographic data also contain information about their position on Earth, however, the nature of this information vary a lot, as there are many coordinate systems in which such data could be stored.
Shapefile format
Vectors commonly used to represent various features in geoinformatics (=digital mapping). Shapefile can contain either polygons, lines or points (only single type for a file). It also has ammended database file with the additional data (e.g. village names for point shapefile of village locations, or forest composition and density in BI's polygon shapefile of Chernarussian forests). Each shapefile consists of 3 files: SHP, SHX and DBF - all 3 of them are essential for a Shapefile layer to work.
ASCII DEM format
Text-based raster used to describe terrain (DEM = Digital Elevation Model) by means of values arranged in regular (square) pattern. The file (TXT or ASC) contains header describing the raster size, sampling interval and coordinates of the lower left corner.
Geographic coordinate system
Coordinates which can be used to describe a location on the Earth surface. There are many coordinate systems (some applicable only to portion of Earth surface) using various units, e.g. angular degrees or meters.
GIS (Geographic Information System)
Simply put, a digital map with plenty of data attached to the map features. The system may integrate various vector and raster (e.g. aerial or satellite imagery) data, terrain models etc. It is used not just as a digital map, but also for landscape analysis or calculations.
|