GPS location services for PC

Hi!

My team and I are in need for a GPS location service for PCs.
An example in using this would be Google Maps where you can get the Longitude and Latitude of the computers current location.

After looking at the updates for Unreal Engine 4.15 I’ve noticed that this is available for iOS and Android devices:

New Location Services now provides access to GPS data for Android and iOS. A new OnLocationChanged delegate is available and Blueprint nodes are provided under Services->Mobile->Location.

  • Is this in any way possible for PC devices? (I’ve already tried the mobile services nodes in blueprints which didn’t work)
  • If not; Are there any plans for developing this for future versions of the Engine?

Thank you kindly in advance.

Hi Alaanor,
Thank you for this answer, sounds super interesting!
I will have a look into it and try to get it to work.

Thank you!

Hey Will0,

The best way to accomplish this, since Unreal Engine 4 only allows GPS data for mobile platforms, is to use IP geolocation. (This) is a simple, lightweight, geolocation library for C++ which provides longitude and latitude. If you would like to use this within blueprints, you can create custom blueprint nodes which utilize the above library. Unfortunately, this is somewhat inaccurate. Mobiles have special hardware which give it GPS capabilities.

Also, you mentioned Google Maps. I myself couldn’t answer how they did it, so here’s a quote from Stack Overflow (credit goes to Stefano Borini for explaining this neatly);


Every time a query is performed to the system (probably in compliance with the W3C draft for the geolocation API) your computer sends the wifi identifiers it sees, and the system does two things:

1. queries its database if geolocation exists for some of the wifis you passed, and returns the “wardrived” position if found, eventually with triangulation if intensities are present. The more wifi networks around, the higher is the accuracy of the positioning.

2. adds additional networks you see that are currently not in the database to their database, so they can be reused later.

As you see, the system builds up by itself. The only thing you need is good seeding. After that, it extends in “50 meters chunks” (the range of a newly found wifi connection).