ArcGIS Maps SDK for Unreal Engine enables access to real-world maps and 3D content in ArcGIS to create interactive 3D GIS applications for Windows, macOS, Linux, Android, and iOS, and to deploy Augmented and Virtual Reality apps directly to your devices.
The plugin provides four options to use ArcGIS data and other geospatial content within a level:
- The Modes Panel UI provides the option to create a scene without writing any lines of code and has a list of basemaps and elevation that you can use.
- Components are behind the Modes Panel UI and provide the option to create a scene without writing any lines of code. They are synchronized with the UI but also you can use them without the UI which allows you to modify values in the Details panel.
- Blueprints provide the option to create scenes using the node-based visual scripting interface offered in Unreal Engine.
- The C++ API grants access to the plugin source code. This option offers you the most flexibility and customization options.
Modes Panel UI
The Modes Panel UI is the central location to set up your scene without writing a single line of code. It initiates the necessary components and sample code to add ArcGIS functionality to a level.
You can use the Modes Panel UI to change between a global or local scene, set the initial position and rotation of the camera and origin, adjust the extent for a local scene, manage layers, as well as change a layer's property during the setup. You have a list of default basemaps that you can choose from or can use a custom basemap or raster tile layer. You can enable and disable elevation, and you have the option to use the default elevation layer and set a custom elevation layer.
To use the Modes Panel UI, start Unreal Engine and click the Select Mode drop-down in the toolbar. You should see the ArcGIS Maps SDK in the list.
In the Modes Panel UI, you can find tabs for each setting category.
- When you click the Create button on the Map page, it will add an ArcGISMapActor that has the ArcGIS Map Component attached to the level to configure the map content.
- When you click the Create button on the Camera page, it will add DefaultPawn that has ArcGIS Camera and ArcGIS Location Component attached to the level. Navigating through the tabs, you can select between a global or a local scene, set the initial position of the camera, change the basemap and elevation, add layers, and organize the layer content.
Components
Components are a special type of Object that Actors can attach to themselves as sub-objects. Each Component has a set of functions and available settings are configurable from the Details panel.
You can find ArcGIS Maps SDK for Unreal Engine Components in the following location:
Plugins > ArcGIS Maps SDK for Unreal Engine C++ Classes > ArcGISMapsSDK > Public > ArcGISMapsSDK > Components
The essential components to set up a GIS scene are the followings:
- ArcGIS Map Component: This component is the container of the content. When it is attached to an empty Actor, fields to set the map will appear in the Details panel. This component needs to be added to the level by drag and drop the ArcGIS Map Actor.
- ArcGIS Camera Component: This component controls the data that is loaded into your scene. See more information about the ArcGIS Camera Component in the Use the camera page.
- ArcGIS Location Component: This component will place Actors at specific geographical coordinates and define their relation with the terrain. You can find more information on the ArcGIS Location Component page.
Also, depending on the app you are developing, you may use sample components in the following location:
Plugins > ArcGIS Maps SDK for Unreal Engine C++ Classes > ArcGISSamples > Public
- ArcGIS Tabletop Component: This component is used for Tabletop workflows. You can set the map extent size, shape and the map center position with this component to zoom and pan the map.
- ArcGIS Tabletop Player Controller: This is a sample player controller that is used for the Tabletop sample. This actor handles mouse inputs for controlling the tabletop map.
- ArcGIS Attribution Display: This is a sample component that includes the information and details about the data within the layer. Attribution is required for all applications that contain a map or do not contain a map.
To start setting up a GIS scene with Components, drag and drop ArcGIS Map Actor from the Place Actors panel. The actor is in the folder:
Plugins > ArcGIS Maps SDK for Unreal Engine C++ Classes > ArcGISMapsSDK > Public > ArcGISMapsSDK > Actors
ArcGIS Camera Component and ArcGIS Location Component are attached to ArcGIS Pawn which you can use as a Camera and move around the GIS scene.
Blueprints
The Blueprint Visual Scripting system in Unreal Engine is a complete visual scripting system based on the concept of using a node-based interface to create gameplay elements from within the Unreal Editor.
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 that can be used to create an ArcGIS
.
For more information on Creating Blueprints see Basic Scripting with Blueprints.
C++ API
The C++ API allows you to access the plugin source code and allows you to set up custom scenes. You can find classes and methods that you can use to set up your scene in the API Reference. By using the C++ API, you gain access to additional features such as the ability to change layer visibility during runtime.
To start using the API you can create a new C++ class:
-
Click the Tools in the menu bar
-
Select New C++ Class...
-
The Choose Parent Class menu will display. You can select an existing class to extend, adding its functionality. Select All Classes and click on ArcGIS Actor under Actor, then click Next. ArcGIS Actor includes ArcGIS Maps SDK Subsystem Listener that allows you to use the editor mode.
-
In the Name Your New Actor menu, name your Actor and click Create Class.
The new script will be created in whichever folder you have selected in the Content Drawer and Unreal Engine automatically opens Visual Studio. By default, Unreal Engine uses Visual Studio, but you can select any editor you like.
-
Add your newly created Actor into the level by manually selecting, dragging, and dropping the Actor from the Content Drawer into the Viewport. This will add the Actor to the Outliner. Click on the Actor in the Outliner to display its properties in the Details panel.
-
In order for your ArcGIS Map to work, you need an ArcGIS Map Actor. Drag and drop the actor from the Place Actors panel to add it to your level. The actor is in the folder:
Plugins > ArcGIS Maps SDK for Unreal Engine C++ Classes > ArcGISMapsSDK > Public > ArcGISMapsSDK > Actors