Learn how to use Blueprints to use ArcGIS data and other geospatial content within a scene.
The Blueprints Visual Scripting system in Unreal Engine is a complete gameplay scripting system based on the concept of using a node-based interface to create gameplay elements from within Unreal Editor. As with many common scripting languages, it is used to define object-oriented (OO) classes or objects in the engine.
There are several methods in which you can create Blueprints, but we recommend using the Level Blueprint.
To open a Level Blueprint for editing, click the Blueprints button in the Level Editor Toolbar and select Open Level Blueprint:
This opens the Level Blueprint in the Blueprint Editor:
There are several methods in which you can place nodes while in Graph Mode. Access the Context Menu by right-clicking in the Graph Editor and searching for
ArcGIS. We provide a series of nodes which can be used to create an
For more information on Creating Blueprints see Blueprint Basic User Guide.
Review the first three steps from the Get started page to ensure your development environment is set up correctly.
When working with 3D content, you can choose to display your data within one of two different scene environments: global or local. The best environment for a global or local scene depends on the spatial reference of your data, the layer types, and what you are trying to achieve in your scene.
Here is an example of how to set up a map:
Note: You can select Local or Global in the variable
A global scene is a view mode where you can display your 2D and 3D content on a sphere based on either the WGS84 or Web Mercator (Auxiliary Sphere) coordinate systems. A global scene is good for when you want to understand or provide context for phenomena that wraps around the spherical surface of the earth, such as global weather measurements, airline traffic paths, or shipping lanes.
A local scene is a view mode that projects the terrain and layers on a planar surface rather than on a sphere and is only projected with the Web Mercator (Auxiliary Sphere) coordinate system. A local scene can be used to represent the entire world, and it has the option of using a fixed extent that can be clipped to the dimensions of your layers. Local scenes can be used for displaying or analyzing data at the local or city scale and are valuable for urban planning and visualizations when you want to view defined areas such as campus facilities or building developments.
An API key is required to enable access to services, web maps, and web scenes hosted in ArcGIS Online. To set up an API key, enter your API key in the API key field in the Details panel, under the Default Value.
A basemap provides a background of geographical context for the content in your scene. ArcGIS Maps SDK for Unity includes a basemap gallery with a variety of choices, including topography, imagery, and streets.
Here is an example of how to set a Basemap:
Elevation layers can help with 3D visualizations by creating relief in your 3D scene. Elevation surfaces define height values across the extent of a map or scene. The most common use for elevation surfaces is to define the elevation source for rasterized content and on-ground vector symbols, but surfaces are also used to define heights when editing features.
Here is an example of how to set up the elevation:
Layers are the contents of a map. They include a wide range of topics about people, earth, life, and so on, and are composed of imagery, web services and local data.
- Web Services: Raster Tile Layers, Integrated Mesh Scenes (v1.7), 3D Object Scene Layers (v1.7) and Elevation Layers
- Local Services: Integrated Mesh and 3D Object SLPK files and TPK files (Imagery and elevation)
Here is an example of how to set the layers:
In order to move around the level, you could use our ArcGIS Default Pawn.
The Pawn class is the base class of all Actors that can be controlled by players or AI. A Pawn is the physical representation of a player or AI entity within the world. This not only means that the Pawn determines what the player or AI entity looks like visually, but also how it interacts with the world in terms of collisions and other physical.
By default, there is a one-to-one relationship between Controllers and Pawns; meaning, each Controller controls only one Pawn at any given time. Also, Pawns spawned during gameplay are not automatically possessed by a Controller.
Here is an example of how to set up the camera:
In a local scene, you can clip the basemap and layers to the custom extent of your view. This is useful for increasing performance, focusing key elements of your project, and interacting with layers that are underground.
The map extent is defined by a series of bounding coordinates that delineate the area of the map or scene with which you want to work.
Here is an example of how to set up the map extent:
Both directional light (sun) and sky must be repositioned so they can move with the map.
It' s necessary to attach the ArcGISDirectionalLightRepositionComponent to the Directional light (Sun) and the ArcGISSkyLightRepositionComponent to the Sky Light.
You can find them in the folder
ArcGISMapsSDK C++ Classes\ArcGISMapsSDK\Public\Components. If the folder does not appear in the Content Browser, click View Options and select Show Plugin Content.