UE Plugin (4.27)
Map Configurations
Overview
The COALA Plugin comes with a Blueprint called BP_Coala. Each map created with this Plugin should have a child of this blueprint, e.g. for the Paper_map it is the BP_Coala_ChildMap2.
This blueprint is a prepared example on how the COALA Plugin can be used to
request data from the COALA server
event-driven work with COALA dataÂ
react to GPS device updatesÂ
There is a preconfigured blueprint in the level "PaperMap" which can be used to explain the different exposed configurable options.
Select the "BP_Coala" in the "World Outliner" and under the category "Coala" in the details panel you can find all possible configurable values listed.
World Outliner Hierarchy Order
In play mode each Area is created as its own object. All objects that are spawned within that Area are collected under this object. Take a look at the World Outliner in play mode to see the hierarchy of it.
CoalaAreaActor_area (the name also includes the Area index)
cells (basically the terrain)
CoalaMeshActor cells
waters (all water shapes are grouped here)
CoalaMeshActor water
buildings (contains all buildings - depending on your configuration the meshes could be merged or independent for each building)
floors (only floor part of buildings)
walls (only wall part of buildings)
roofs (only roof part of buildings)
pois (all Points Of Interest that exist in that area are listed here - not the ones from the Back-end, only your configured POI prefabs)
streets (contains all street types/categories)
CoalaMeshActor street
decorations (all decorations that have been spawned in that area)
StaticMeshActor decoration
Setup
Coala Scale
This value indicates the ratio of real world data to Unreal Engine units
At 1.00, a map with 100% of the size of the real world data is generated
Tip: Modify this setting if you don't see any shadows on your map
At 0.01, a map with 1% of the size of the real world data is generated
Elevation Scale
COALA also provides elevation data. Modify this value to set the scaling
Area Load Buffer
This value specifies how many Areas around the player should be rendered
Value of 0 - Only the area where the player is currently in
Value of 1 - One Area around the players Area in all directions
3 x 3 = 9 areas in total
Value of 2 - Two Areas around the players Area in all directions
5 x 5 = 25 areas in total
and so on
Tip: Do not use a value above 1 on mobile builds as it will impact performance
Get Weather Updates
If checked, the Plugin will request weather data and update the weather system accordingly
Get Weather Delay
This value is determines how many seconds apart two consecutive weather updates pulled from the COALA server are
GPS Accuracy
How accurate the GPS data should be
Three Kilometers
One Kilometer
One Hundred Meters
Ten Meters
Best
Best for Navigation
Request Context
Here you can set which data layers should be requested from the COALA server
GAMETAGS (ProjectTags)
POIS
WEATHER
STREETS
BUILDING
WATER
CONTEXT
TIMEZONE
CUSTOM POIS
ELEVATION
CRIME
Tip: even if you have a building configuration assigned, there will be no buildings on the map if you don't have "BUILDINGS" selected in this field.
Cell
Cell Default Render Config
This is the cell render config that will be used if no context in the background matches the "Render Config Cell" fields below
Empty on default render config
A list of available Gametags (ProjectTags)
This is configured in the COALA Back-end with the Node Editor
Material
The material that will be assigned to the generated cell mesh
Tip: The cell mesh itself is UV mapped so that the texture will cover the whole mesh
Only if Gametag Is Highest
Apply the defined Material to a Cell only if the chosen ProjectTag has the highest Weight in this Cell
Tip: The weight is defined by each project individual
Buildings
Building Render Config (Each building consists of different parts that can be configured by this object)
Create Meshes
select here which part(s) of the building should be generated
FLOOR
FOUNDATION
WALLS
ROOF
Merge Meshes
checked - all buildings are collapsed into one actor
unchecked - each building is its own actor
Generate UVs
Determines whether the building generator should also calculate UV coordinates
uncheck that option if don't have a tile-able texture for your buildings
increases render performance slightly if unchecked
Height Per Level
If that information is available from COALA, each building will have a real world representation of its floors/levels. This field configure how tall each level is.
measured in unreal units
Generate Collisions
Determines whether the building generator should also create collision data
Warning: If you uncheck this option, the decoration system will not be able to detect that a specific location is occupied by a building object and will place decorations even if you select "don't spawn on buildings" (See Ddecoration further down in this page)
Default Building Level
If no information is available regarding how many floors/level the real world building has, this value will be used
You can use this option to have buildings with 3 levels in your map (to have a nicer overall feeling)Â
Clamp to Default Building Level
If this is checked, all buildings that have more floors/levels than the value in "Default Building Level" are clamped to the value in "Default Building Level"
You can use this option to have all buildings the same size (to simulate a skyline)
Limit Max Building Level To
This value limits the maximum number of floors/levels to a specific value
Modify this value if you don't want to have skyscrapers in your map
Streets
Street Z Offset
Determines how high above the ground the generated street mesh should be placed
Tip: modify this value if your streets clip into the groundÂ
Street Default Render Config
Determines how a street should be generated if no other street render config object match the street type
Types - Street type to apply this config
The "Default Street Render Config "is empty because this is the default config
Otherwise, there is a list of street types
Width - Street width in Unreal units
Material - Street material used for the generated mesh
Merge Meshes Â
Check this so that all streets of this type are combined into one Actor
Water
The "Water Render Config" contains the following values
Material
Determines which material will be used for the generated water meshes
Generate UVs
Check this so that the water generator also calculates UV coordinates
disable that option if don't have a tile-able texture for your water mesh
slightly increases render performance if unchecked
Outline Width
It is possible to add an outline mesh to the water meshesÂ
A width of 0 results in no outline meshes being rendered
Outline Material
Determines the material of the outline meshes
POIs and Custom POIs
Poi Configuration
Here you can assign meshes to the POIs defined in the Back-end. The POI names on the left have to match ones in the Back-end.
Tip: You can define your own Poi's in the COALA Back-end. The ones on the screen to the left are defined by our PaperMap example project, which you can derive from and use in your own project.
Custom Poi Configuration
This list is equivalent to the "normal" POIs, but it uses the information from the Custom POI layer which are self-created Points Of Interest of each Project.
Dev
Player Editor Start Lon
Player Editor Start Lat
These two values let you set the GPS starting position of the played in the editor
Enable Movement by Click
Check this box for easier exploration and testing. It allows you to move around the map by right clicking into the scene
Print Variables to Screen
This multi-selectable field is mainly for tracking/investigating what is going on in the plugin itself. It lets you print different events that happen in the Plugin to the screen
GAME FPS
AREA EVENTS
GPS EVENTS
CLICK EVENTS
Decoration
Area Decoration Configuration
Configurations for the various decorations you wish to include. You can add as many as you like.
Gametag
The ProjectTag(s) a Cell needs to have so that the specified decoration can spawn on it.
Use At
Specify here where you want the decoration to spawn (currently only Cells is supported).
Skip If
Choose where you want decorations to not spawn (a combination of waters, streets, and buildings is possible).
Decoration
The mesh of the decoration that should be spawned.
Random Scale Max
The maximum values for the mesh's randomized dimensions.
Random Scale Min
The minimum values for the mesh's randomized dimensions.
Count retries if position is occupied
To spawn the decorations we use line tracers that detect collision with other objects. If the line tracer "hits" an object that is defined in the "Skip If" section, the decoration mesh is not spawned. Here you can define how many times it should shoot those line tracers at random positions within a Cell.
Only if Gametag is highest
Only spawn the decoration if the ProjectTag assigned to it has the highest Weight in this Cell.
Crime
Please note that this feature is in an early stage and we are including more and more data points. We currently support the following countries:
GB
Parts of the US
Render Crimes
Force Render All Crimes
Renders all crimes regardless of their unique configuration in Crime Types To Display.
Crime Types To Display
Configure your crime types here. Select a combination of crime types like e. g. 'THEFT' and 'BICYCLE' to configure all instances of bicycle theft. 'Should be Highlighted' will use the HighlighterPrefab when checked. Crime types that are not configured will not be rendered. To ignore this setting and show all crimes, check Force Render All Crimes. Beware that the 'AREA' type will be ignored.
Highlighter Blueprint
Blueprint used to highlight a crime type combination if specified in Crime Types To Display.
Default Crime Pin Blueprint
Set the default Blueprint to be used when no Blueprint is specified in a crime type combination in Crime Types To Display.
Heat Map Type
You can select here if and how you want to display your Crime heatmap. 'None' disables the heatmap.
Influence
This value determines how far the Heatmap is influenced by one Crime Point.
Weight Factor
This value determines how much a Crime Point influences its surrounding heatmap tokens.
Weight Threshold
Set the minimum Weight for HeatMapTokens to be displayed. If you want to display all tokens, set this value to -1.
Pillar Scale
This value is only relevant when Heat Map Type is set to 'Pillar' and determines how the height of the Heatmap's tokens scales.
Pillar Token Blueprint
This Blueprint will be instantiated for each loaded cell if Heat Map Type is set to 'Pillar'. Has to Inherit from BP_HeatmapToken!
Flat Token Blueprint
This blueprint will be instantiated for each loaded cell if Heat Map Type is set to 'Flat'. Has to Inherit from BP_HeatmapToken!
Transportation
(The Transportation data are currently still being gathered and implemented into the server so you will currently not get a response from transportation requests. If you need a data dump for testing purposes, please reach out here: support@thoughtfish.de)
Transportation Type
This determines the transportation data that will be requested. You can request multiple transportation types by flagging multiple ones. To disable the transportation layer, flag "NONE".
Vehicle Blueprint
The blueprint for the actor which is spawned to represent each vehicle of this setting's type. Needs to inherit from BP_Vehicle!
Stop Blueprint
The blueprint for the actor which is spawned to represent each stop of this setting's type. Needs to inherit from BP_Stop!
Bus Settings
These settings apply to entities of the type "BUS".
Train Settings
These settings apply to entities of the type "TRAIN".
Flight Settings
These settings apply to entities of the type "FLIGHT".
Transportation Data Loading Perimeter
This determines the radius (in meters) around the player's location where transportation data will be considered for rendering. Any route and respective vehicles will be rendered as long as at least one stop is located inside the set range.