
Описание
Real World Data exposes real-world geolocation and environmental data as asynchronous Blueprint nodes and C++ delegates. All system and network I/O — including GPS location fixes, weather queries, marine data, air quality, UV index, and astronomy lookups — executes on background worker threads, with results marshalled back to the game thread via delegate callbacks. No blocking calls are made from the main thread.
What's IncludedLive Location (Windows Only) retrieves the player's geographic position through the system Geolocator (WinRT). You get latitude, longitude, altitude, accuracy, and the system timezone offset (UTC offset in hours, clamped to -12 to +12). The first call automatically triggers the Windows system consent prompt; subsequent permission changes are broadcast through the OnAccessChanged event. Results are cached for instant non-blocking access.
Live Weather queries current conditions from your choice of provider:
Open-Meteo (Free) — no API key needed
Open-Meteo (Commercial)
OpenWeatherMap (One Call 3.0)
QWeather
Each weather struct includes a Provider field so your Blueprints always know which service produced the data. WeatherCode is provider-specific and not comparable across services; use the unified Condition enum (Clear, Cloudy, Rain, Snow, Thunderstorm, etc.) for cross-provider game logic.
Marine Data fetches wave height, wave direction, wave period, and sea surface temperature. Currently supported by Open-Meteo only; for inland locations the node returns null values with a clear "no marine data" message.
Air Quality retrieves PM2.5, PM10, NO2, SO2, O3, CO, and overall AQI.
UV Index returns the current UV index, today's maximum, and provider-specific category / level information. All providers support this domain, though QWeather reports a daily life-index level and category rather than a numeric UV value — check UvCategory and UvLevel when using QWeather.
Astronomy provides sunrise, sunset, moonrise, moonset, and moon phase data. Local wall-clock times (24-hour "HH:MM" format) are available across all providers as the portable cross-provider fields. Unix timestamps are provided when the source reports absolute times. Open-Meteo reports sun data only. QWeather requires two HTTP calls (sun + moon); if the moon part fails, the node still carries the successfully retrieved sun data. MoonPhase01 ranges from 0.0 (New Moon) to 0.75 (Last Quarter), with -1 when not reported. bSunIsUp and bMoonIsUp are computed automatically when the necessary rise and set times are available.
If the active provider does not support a requested domain, the node fails immediately with bSupported = false — no network request, no retries. Use IsWeatherDomainSupported to adapt your UI before calling a domain-specific node.
Blueprint APIGet Location Update (Async) — Fetch fresh GPS data with configurable timeout (default 15s) and maximum cache age (default 60s).
Get Weather (Async) — Fetch current weather for given lat/lon with HTTP timeout (default 10s) and automatic retry (up to 3 total requests on network errors, HTTP 5xx, or unparseable responses; HTTP 4xx errors are not retried).
Get Marine (Async) — Fetch marine conditions for coastal locations.
Get Air Quality (Async) — Fetch air quality index and pollutant readings.
Get UV (Async) — Fetch UV index, daily maximum, and category / level.
Get Astronomy (Async) — Fetch sunrise, sunset, moonrise, moonset, and moon phase for the current date.
GetLastKnownLocation / GetLastKnownWeather / GetLastKnownMarine / GetLastKnownAirQuality / GetLastKnownUv / GetLastKnownAstronomy — Instant cached access with no blocking.
RequestLocationAccess — Explicitly trigger the Windows permission prompt.
IsWeatherDomainSupported — Check whether the current provider supports Current Weather, Air Quality, Marine, UV, or Astronomy before making a request.
GetCurrentWeatherProvider — Read which provider is active in Project Settings.
OnLocationUpdated / OnWeatherUpdated / OnMarineUpdated / OnAirQualityUpdated / OnUvUpdated / OnAstronomyUpdated / OnAccessChanged — Event-driven updates for reactive UI and gameplay.
Windows only. Location services rely on the Windows WinRT Geolocation API. Weather, marine, air quality, UV, and astronomy providers communicate over HTTP and are architected for future platform expansion, but the plugin is currently supported and tested on Windows only.
ConfigurationAll settings are in Project Settings > Real World Data > Weather:
Weather Provider — Select the active service. Default is Open-Meteo (Free).
API Key — Each keyed provider exposes its own field only when selected (Open-Meteo Commercial, OpenWeatherMap, QWeather, WeatherAPI.com). The free provider requires no key.
QWeather API Host — QWeather accounts use a unique per-account API host. Paste it here when QWeather is selected; leave empty to use the default dev endpoint.
Base URL Override — Optional. Redirect all requests through a proxy, mirror, or custom deployment.
If a provider requires an API key and none is configured, the node fails immediately with a clear error message.
Data Domains by ProviderAll four providers support Current Weather, Air Quality, UV Index, and Astronomy.
Marine data is currently available through Open-Meteo only.
Provider-specific caveats: Open-Meteo Astronomy returns sun data only (no moonrise, moonset, or moon phase). QWeather UV returns a life-index level and category rather than a numeric UV index. QWeather Astronomy requires separate sun and moon API calls.
Technical DetailsEngine Modules: HTTP, Json, DeveloperSettings
Threading: Background-thread requests with guaranteed game-thread callbacks
Caching: Last known location and all weather domains are cached for instant retrieval
Retry Logic: Configurable 0 to 2 extra attempts (up to 3 requests total) on transient failures
Build Requirements (Windows): WinRT API linking (runtimeobject.lib / windowsapp.lib); Windows 10 SDK (included with UE)
The first location request on Windows displays a system consent prompt. If denied, or if the system location master switch is off, the player must enable it in Settings > Privacy & security > Location.
Desktop location accuracy depends on the network environment. Wi-Fi positioning is typically accurate to tens or hundreds of meters; most desktop PCs have no GPS hardware.
Weather, marine, air quality, UV, and astronomy data are city/regional level and require an active internet connection.
Marine wave data is only meaningful for coastal or ocean locations; inland queries return null values.
Astronomy requests use the current date local to the requesting machine.
Full documentation, Blueprint examples, and integration guides are available at:
https://qxny.gitbook.io/realworlddata



