Location Toolkit

From Epic Wiki
Jump to: navigation, search

Overview

Location Toolkit is an asset pack on the Unreal Engine 4 marketplace. The pack contains assets and tools to support geographic location features in your projects.

LocationToolkitFeatured640x320-2017-06-07.png

Description

This toolkit allows you to quickly and easily integrate geographic location support to your projects. You will find textures, materials, static meshes, and blueprints themed on location. To gain access to a mobile device location, simply add the location engine blueprint actor component to your game instance or level. The location of the player/device is automatically available and refreshed. This is a blueprint only pack which makes the engine's native location infrastructure practical. Various assets related to location are part of the pack. The toolkit can be used on all platforms types.

Template:Note

Video Overview

<youtube>https://youtu.be/xs5twcI7Xwo</youtube>

Details

In addition to the location engine actor component blueprint, you will also find a wide breadth of assets to use in your projects:

  • GPS sensor support module for mobile platforms.
  • Location-related macros, library, blueprints, infrastructure, and interfaces.
  • Data, planar, spherical location map displays.
  • 160+ textures/materials: location markers, geographic grids, compass rose, etc...
  • Eight location pin static meshes and modular location pin blueprints.
  • Earth planet materials palette.
  • Blueprints fully documented with logging capability.

Blueprints come fully documented with optional, human friendly logging and debugging information for troubleshooting. Targeted at all platforms in general. Tested on Android and Windows. Should work on all other platforms. Extensible to other platforms when the Unreal Engine API support and implementation becomes available.

Screenshots

LocationToolkitOverviewScreenshot1000.png

Android Demonstration

An Android application demonstrating the toolkit features: Location Toolkit Android App on Google Play Store

Technical Details

List of Features

  • Data location whiteboard.
  • Customizable planar map location with location marker/pin.
  • Customizable spherical map location with location marker/pin.
  • Modular and customizable location marker/pin 2D/3D blueprints.
  • Mobile location engine actor component blueprint: configurable, documented, and ready for easy use.
  • Random, satellite-like, level capture location engines.
  • Various conversion functions: location to pretty text, JSON, decimal, degree/minute/seconds, rotation, cardinal point, etc...
  • Observer design pattern implemented using blueprints with various interfaces to provide implementation contract on objects which you want to use location.
  • Number of Blueprints: 13
  • Number of Textures: 168
  • Do Materials derive from a Master Material with instances as variation: Yes
  • Texture Resolution (complete list): 8192x8192, 4096x4096, 2048x2048, 1024x1024, 512x512

Information

Blueprint Nodes List

Macros

Location Category
Name
LocationLogDebug
RandomLocation
ToCardinalDirection (ECardinalDirectionLetter)
ToCardinalDirectionLetter (ECardinalDirection)
ToDegreeMinuteSecond (Float)
ToDegreeMinutesSecond (Latitude)
ToDegreeMinutesSecond (Longitude)
ToFormattedString (LocationServicesData)
ToFormattedText (DegreeMinuteSecond)
ToJsonString (Location)
ToJsonString (LocationServicesData)
ToLetter (CardinalDirection)
ToLocationServicesData (Rotator)
ToLocationServiceData (WorldData)
ToRotator (LocationServicesData)
ToText (ECardinalDirectionLetter)
ToText (ECardinalDirection)
ToText (ELocationAccuracy)

Functions

Name
UpdateAllChangeableLocations

Platform Specific Requirements

  1. The mobile location engine blueprints is only supported on mobile platforms: Android and iOS.
  2. The level map location engine is only supported on PC platforms.

Required Unreal Engine Plugins

  • Android Runtime Permission: Needed for location permission request (Android SDK 23+)
  • Mobile Location Services - Android Implementation: Needed for accessing location services on Android.
  • Mobile Location Services - IOS Implementation: Needed for accessing location services on iOS.
  • Mobile Location Services Blueprint Library: Needed for general location services blueprint support.
  • OnlineSubsystem: Needed to open the UE editor.
  • Note: Additional plugins may be required to build the project as per UE4 requirements (e.g.: Visual Studio Integration, Plugin Browser, etc...)

Tutorials

Mobile Platform Location Engine

Android Support

You may want to use some of the following permissions for Android platform. They wil give you access to the location API. To be added to your Project/Build/Android/ManifestRequirementsOverride.txt for instance.

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

SDK API 23 and up uses runtime permissions.

You may also add the extra permissions in the Editor, in the Android section, the Extra Permissions array:

android.permission.ACCESS_COARSE_LOCATION
android.permission.ACCESS_FINE_LOCATION

Modular Pin Blueprint

Coming soon.

Support

Frequently Asked Questions (FAQ)

1. Can I use my own custom GPS (latitude/longitude/altitude) on the maps and globes?

Yes, you can create any custom location engine and have the information displayed. The "random" and "orbital" engines are good examples to follow.

2. Do I need to deal with C++ code to use this pack?

No, this is a blueprint-only pack. The toolkit makes complex location engine features easy to use and gives you access to the high-level functionality you want to use right-away. Blueprints are extendable and configurable for your needs.

3. Why is the device GPS location only available for Android and iOS and not the other platforms?

As of September 2017, the Unreal Engine 4 has native implementation for GPS location support on iOS and Android mobile platforms. We hope other platforms will soon be supported.

4. Why does my game/app fail to launch on iOS?

If you cannot package or launch your project and get a CodeSign Failed error you should verify or renew your provision and certificate for the shipping configuration.

5. Why did my GPS location updates stopped working after I upgraded the engine or the toolkit?

A possible race condition during the construction of the Geo Location Engine blueprint may manifest itself when updating the kit or the project. As a result, a previously working project with a location engine may stop providing location updates and default back its parameters. If you encounter this issue, you want to force the ordering of component construction with a direct dependency or a small delay.

Forum Support

Location Toolkit Forum Thread

Release Notes

2018-02-14

  • Added a vintage compass static mesh and a needle.
  • Scripted a compass blueprint asset to point to the North blueprint.
  • Added more compass textures. More variety. x3
  • Extended compass cardinal enumeration to 16 directions. Name and letter code. E.g.: North North West (NNW)
  • Reverse lookup: world map to location and altitude data with demonstration.
  • Minor static meshes and light maps improvements.
  • Documentation improvements and fixes.
  • Support for Unreal Engine 4.18.3 release.

2017-10-24

  • Added multi-layered blueprint sphere/planet for automatically stacking materials. Useful for planets.
  • Added a UMG Widget location presenter used for a mini phone/tablet app demo. Requested by users.
  • Added initial support of location data representation on spheres. Exciting new feature.
  • Added a few more location pin textures. More variety.
  • Generalized the texture presenter transforms of plan textures. More flexible.
  • Improved the handling of the presenter and nameplate titles. Consolidated API.
  • Updated the documentation at https://wiki.unrealengine.com/Location_Toolkit. Requested by users.
  • Opened the cerisesoftware.slack.com Slack channel to support this project. If you need support!
  • Various improvements, fixes, and tweaks. Enjoy!

2017-08-31

  • Added lower resolution textures (4096 px, 2048 px, etc...) from high-resolution assets for mobile platform and scalability.
  • Support metal input for non-mobile platforms.

2017-08-25

2017-08-14

  • Added nightlight capabilities for the planet material. Emissive control support.
  • Added atmospheric effect capabilities for the planet material. Hue and thickness control support: reflection, refraction, and halo.
  • Improved mobile compatibility of the Earth material, functions, and features.
  • Added Android runtime permission support.
  • Converted project to 4.17.
  • Added a simple flag location pin static mesh.
  • Added compass modular textures, example materials.
  • Added scene capture for map level location engine.
  • Orbital location engine configurability.
  • Improved collision prisms.
  • Joined Cartrdge https://cartrdge.com/cerisesoftware/projects/location-toolkit
  • Unreal engine wiki article.
  • Unreal engine forum article.
  • Many blueprint improvements, hygiene, and feature tweaks.

2017-07-22

  • Added nightlight capabilities for the planet material. Emissive control support.
  • Added atmospheric effect capabilities for the planet material. Hue and thickness control support: reflection, refraction, and halo.
  • Improved mobile compatibility of the Earth material, functions, and features.
  • Added Android runtime permission support.
  • Converted project to 4.17.
  • Added a simple flag location pin static mesh.
  • Added compass modular textures, example materials.
  • Added scene capture for map level location engine.
  • Orbital location engine configurability.
  • Improved collision prisms.
  • Joined Cartrdge https://cartrdge.com/cerisesoftware/projects/location-toolkit
  • Unreal engine wiki article.
  • Unreal engine forum article.
  • Many blueprint improvements, hygiene, and feature tweaks.

2017-07-12

  • Patch update for first marketplace release.
  • Minor hygiene and improvements.
  • Added plugins requirement list.
  • Fixed redirectors.
  • Moved and renamed assets.
  • Added logging to "Cast To" nodes.
  • Optimized pin texture sizes.

2017-06-07

  • Static meshes improvement and smoothing.
  • Lightmap packs and UV improvements.
  • Simplifying location update events and processing.
  • Allowing multiple different location engines type to exist in the same project.

2017-05-27

  • Support for Unreal Engine 4.16.
  • Added smooth needle solid static mesh.
  • Added a few more location pin texture masks.
  • Further minor clean-up and documentation.

2017-04-22

  • Neatly relaiying out all Blueprints make reasonable use of Blueprint functions and comment nodes to organize the overall logic structure.
  • Improving platform error messaging: user experience improved if the platform doesn't support location or privileges are missing.
  • Including a tutorial blueprint asset walking users through how to use the system.
  • Making all materials PBR:
  • Fixed specular to be not specified.
  • Specified metallic to be 0 or 1.
  • Removed ambient occlusion for mobile.

2017-03-01

  • Initial release.
  • Location engine and supporting assets.

2017-01-01

  • Project started! New year resolution fulfilled!

Contact Information

Any question? Feature request? Email us at cerise.software@gmail.com Leave us a comment or rate us! Also find us on Cerise Software website.

Author

Author: F3NR1S

Related Articles

Page Rating

Template:Rating