Skip to content

A whole-earth visualization in Unity with support for WGS-84 coordinates and multiple levels of detail.

License

Notifications You must be signed in to change notification settings

qiaonifengxue/OneWorldSDKforUnity

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OneWorldSDK Unity Demo

The One World SDK Unity Demo showcases how to view a worldwide base terrain at multiple levels of detail with support for WGS84 coordinates. The user may fly anywhere around the world while a terrain streaming system automatically loads imagery and elevation data from disk or through web services.

With the One World SDK, the Earth can be seen from a low altitude to a high altitude. One World SDK - Earth

While connected to Bing Maps with an API key, elevation data is streamed on-the-fly for the current location. One World SDK - Mountains

Goals

We believe in leveraging the massive Unity developer base to build a realistic, whole-earth, and interactive world. One World. Free and Open-Source.

The world should be available on the devices you use from desktop to mobile devices. The Unity real-time 3D engine also has first-class support for Virtual Reality, Augmented Reality, and Mixed-Reality headsets to create immersive and highly compelling experiences.

Help us on this journey. If you have ideas to contribute to this project, join us.

Developer Setup

C# middleware libraries can be found in the src/Libraries/ directory. The src/OneWorldSDK_UnityDemo/ directory is a Unity Project with additional demo integration scripts in src/OneWorldSDK_UnityDemo/Assets/Scripts/.

  1. Open src/Libraries/OneWorldSDK.sln using Visual Studio 2019.
  2. Build the solution.
  3. Then run copy_DLLs.bat.
  4. Open the src\OneWorldSDK_UnityDemo project in Unity. (The default Unity version is 2019.4.14f1)
  5. In Unity, navigate to Assets->Scenes and double-click on the OneWorldDemo.unity scene.
  6. Press the Play button.

Camera Control

  • C - Increase altitude
  • X - Decrease altitude
  • R - Pitch up
  • F - Pitch down
  • Q - Roll counter-clockwise
  • E - Roll clockwise
  • A - Left
  • D - Right
  • W - Forward
  • S - Backward
  • Space - reset view to be looking down at the globe

Configuration

The One World SDK Unity Demo configuration file serves as a reference, and we recommend creating a local copy data/OneWorldSDK_Viewer.local.config.json for your local configuration settings to avoid accidentally committing local settings or your private API key.

Elevation

By default, no elevation will be present. Elevation can be easily supported using a Bing Maps API key:

  "elevationProviderType": "bing",
  "elevationProviderSettings": {
    "bing": {
      "apiKey": "<YOUR_API_KEY_HERE>"
    }
  }

Setup Video

Please see this video showing the steps to setup the One World SDK for Unity.
One World SDK Setup Tutorial

Demo Videos

Several videos created using the One World SDK for Unity can be found on our YouTube channel. One World SDK for Unity on YouTube

Please subscribe to our channel and give us a like if you would like to see more of this content.

Professional Services

Do you need to augment your software development team, or are you looking for an experienced team to develop a solution that leverages the One World SDK for Unity? For custom development projects, please contact [email protected]

License

The source code in this repository is licensed under the MIT License. See the LICENSE text file for full terms.

About

A whole-earth visualization in Unity with support for WGS-84 coordinates and multiple levels of detail.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 97.5%
  • GLSL 1.2%
  • ShaderLab 1.1%
  • Batchfile 0.2%