Yes, ArcGIS Maps SDK for Unreal Engine is a fully supported SDK to use with ArcGIS services, image tile packages, and scene layer packages.
Windows and macOS. The Apple M1 processor is not supported. Go to System requirements to see the specific requirements.
Windows, macOS, Android, iOS, and XR platforms. Go to Deployment to see the specific deployment settings.
You can find the ArcGIS Maps SDK for Game Engines official community at Esri Community.
New ideas are very welcome. You can suggest your idea in the ArcGIS Maps SDK for Game Engines official community at Esri Community.
Feel free to ask questions in the ArcGIS Maps SDK for Game Engines official community at Esri community.
The ArcGIS Maps SDK for Unreal Engine has built in functionality to access the following ArcGIS services:
- Basemap layer service
- Elevation service (limited to single elevation source)
- Image tile service
- Scene service (limited to 3D object scene layers and integrated mesh scene layers)
For services that are private, yes, you need to provide authentication to access ArcGIS Enterprise services. You typically implement OAuth 2.0 with ArcGIS Identity or Application credentials to do so. Public services do not require authentication.
To learn more about the different types of authentication, go to Security and authentication in the Mapping APIs and location services guide.
No. The raster image tile services are no longer maintained or recommended for use by Esri.
To learn more about ArcGIS location services and their capabilities, go to the Mapping APIs and location services guide.
To learn more about ArcGIS Enterprise services and their capabilities, go to the REST API documentation.
The cost to access ArcGIS location services depends on the type of ArcGIS account you have and the services you use.
If you have an ArcGIS Developer account, you are billed in US dollars. To determine the cost of accessing different services, go to Pricing. A free tier of access is available for some services.
If you have an ArcGIS Online account, you are billed in credits. To determine the cost of accessing different services, go to Understanding credits.
If you have ArcGIS Enterprise, there is no cost for accessing your own ArcGIS services.
To learn about accounts, content and data, and basemap layer attribution, go to Deployment in the Mapping APIs and location services guide.
Before troubleshooting layer loading issues, make sure that you have added an ArcGIS View State Logging Component. This component notifies you of any updates to the status of layers, elevation sources, and the view. These events tell you whether your data is active, if it fails to load, or any usage warnings that come with using a specific dataset to help you determine when there is a problem with your GIS data. If the view state log doesn't give you the exact information you need, you can follow the checklist below:
If you are adding 3D object scene layers or Integrated mesh scene layers, your file needs to be version 1.7+. You can check this by opening the JSON file that is associated with the service. For the online services, if the JSON content is not displayed by accessing the service URL, try to add
?f=jsonat the end of the service URL to access the content. For local data, you can extract the file as a zip archive, and open the .json file.
Check if your spatial reference is supported by the map type. Global scenes support all the geographic coordinate systems. For a projected coordinate system, only Web Mercator (Auxiliary Sphere) (WKID: 3857) is supported. Local scenes support all projected coordinate systems. For the geographic coordinate system, WGS 84 (WKID: 4326) and China Geodetic Coordinate System 2000 (WKID: 4490) are supported.
Your data's spatial reference may differ from your ArcGIS Map's spatial reference which prevents your data from loading. This is because ArcGIS Maps SDK for Unreal Engine uses the first layer added (oftentimes the basemap) to determine the spatial reference for the ArcGIS Map. In this case, reset the spatial reference of ArcGIS Map by removing the existing basemap/first layer and adding the new layer as the first layer. Make sure to save the level and reload for ArcGIS Map to be updated for the editor mode.
When you use a private online service in your app, you need to set up OAuth 2.0 with ArcGIS Identity or Application credentials. Private online services are loaded only after successful authentication.
If all of the above are correct and your data is loaded in other products like ArcGIS Pro, your data might be corrupted or saved in an old format. Try to export the file package again or republish the service.
The Modes Panel UI pushes values to Components. However, when you change the values in the Component for the settings in the opened Modes Panel UI, not all changes can be pushed from the Component to the Modes Panel UI. Click on another tab of the Modes Panel UI to pull the new values from the Component.
Some changes that you make with the Modes Panel UI or from the Details panel may not be reflected in the editor Viewport rendering.
Editor mode camera and Play mode camera are not in sync. When you change the camera position with the ArcGIS Pawn, double click on the ArcGIS Pawn in the Outliner panel to move the camera position to the configured place. If you want to adjust the camera Heading, Roll, and Pitch to the configured values, click Play once. You can set the initial camera position to the current editor view camera position, right-click on the ArcGIS Pawn in the Outliner panel, and select Snap Object to View. You can also click the Align with View button in the Camera tab from the Modes Panel UI.
OAuth challenge handler will be triggered when the private layer starts to load. When you configure OAuth for the first time, save the level once and reload it to trigger the pop-up window and sign in.
Many factors can affect performance. You can find performance and optimization tips in the Unreal Engine Documentation. Depending on the platform you are going to deploy, you can also find additional tips in the Sharing and Releasing Projects section.
Disabling the editor mode can increase performance while you are developing an app. You can disable the feature via C++ API or from the
Is Editor Mode Enabled checkbox if you have the ArcGIS Map Actor in your level.
When you use a high spec machine to develop or run your app, ArcGIS Maps SDK for Unreal Engine may not be using all the power that the machine has. You can adjust memory allowance manually by specifying system memory and video memory values in
ArcGIS Maps SDK for Unreal Engine requires to have at least one C++ class in the project's source code folder. The C++ class can be empty and you can create it from Tools > New C++ Class....
You can ensure your project has an empty C++ class by creating a new project as a C++ project in Unreal Engine's project creation wizard. See the Add the plugin to a new project page for more information.
Unreal Engine has the Disable realtime viewports by default in Remote Sessions option in the Editor Preferences is enabled by default. Remove the check from this option in Edit > Editor Preferences when you use Unreal Engine in a remote session to see the ArcGIS Map in the Viewport.