Skip to content

mousedoc/cesium-unity-samples

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cesium for Unity Logo

Cesium for Unity Samples

The Cesium for Unity Samples is a starter project to learn and explore the Cesium for Unity plugin.

The scenes in this project will walk you through the plugin's features and demonstrate global-scale content, applications, and experiences in Unity 3D.

The source code for Cesium for Unity itself may be found in the cesium-unity repo.

Aerometrex Photogrammetry of San Francisco in Cesium for Unity

Photogrammetry of San Francisco, California visualized in Unity, using Cesium for Unity.
Open the 03_CesiumSanFrancisco scene in Cesium for Unity Samples to experience it yourself!

🚀 Get Started

  1. Download Cesium for Unity Samples.
  2. Extract the .zip file into a suitable location on your computer.
  3. If you have Unity Hub installed, click the "Open" button under the "Projects" tab. Otherwise, open the Unity Editor directly and select "Open Project". Then, point it to the extracted directory. Unity will load the project and also download Cesium for Unity using the Package Manager.
  4. In the Asset Browser, select and load Assets -> Scenes -> 01_CesiumWorld. You can also select other scenes as you browse and explore the samples.

Have questions? Ask them on the community forum.

⛰️ Level Descriptions

1️⃣ Level 1 - Cesium World

The sample levels begin with a scene in San Francisco. You'll see Cesium World Terrain and Cesium OSM Buildings in this scene. This level is designed to familiarize you with the core Cesium game objects and components, like Cesium World Terrain and Cesium Georeference.

Be sure to sign into your Cesium ion account using the Cesium button in the toolbar.

2️⃣ Level 2 - Melbourne Photogrammetry

In this scene, explore high-resolution photogrammetry data of Melbourne. This data is streamed from Cesium ion with the 3D Tiles format, a spatial index for streaming massive 3D content over the web. 3D Tiles makes it possible to stream hundreds of gigabytes of data over the web using hierarchical level of detail, spatial subdivision, and runtime optimizations.

See how this scene was created with the Adding Datasets tutorial.

3️⃣ Level 3 - San Francisco Photogrammetry with a Unity Character Controller

In this scene, explore even more high-resolution photogrammetry data of San Francisco using a third-person character controller. Whereas Melbourne allowed you to freely fly around and explore, in this scene you'll walk right up to the real-world data. When streaming content through Cesium for Unity, physics and gravity will continue to work as expected with your character controllers.

Grab some cool screenshots to share with us as you explore and customize the scenes.

Photogrammetry of the Ferry Building in San Francisco, CA captured by Aerometrex and visualized in Unity 3D using Cesium for Unity.

Photogrammetry of the Ferry Building in San Francisco, CA captured by Aerometrex.
Open 03_CesiumSanFrancisco in the Cesium for Unity Samples to walk around the dataset.

4️⃣ Level 4 - Metadata

Cesium for Unity enables you to access metadata encoded in your 3D Tiles datasets. In this scene, explore the buildings in New York City and see what information is included in the tileset about each building.

Metadata of New York City buildings visualized.

Metadata of New York City buildings visualized.
Open 04_CesiumMetadata in the Cesium for Unity Samples to explore the New York City buildings' metadata.

🥽 1️⃣ VR Level 1 - Denver Photogrammetry

Cesium for Unity supports virtual reality platforms. This level is set up for users with VR headsets to get started quickly. In this scene, explore high-resolution photogrammetry data of Denver, Colorado with VR controller support. To build this for the Oculus Quest 2, open VR01_CesiumDenver in the Unity Editor and follow the instructions to build an APK file for the headset. These instructions also appear in the UI of the scene itself.

  1. Ensure that your Unity Editor has Android build support. If not, follow the instructions here to set it up.
  2. Go to File -> Build Settings and change the platform to Android.
  3. Remove the original sample scene from the scenes list, then click the "Add Open Scenes" button.
  4. Go to Edit -> Project Settings. Scroll down to find and click on "XR Plug-in Management".
  5. Go to the "Android" section and check the box next to "OpenXR".
  6. Finally, in the Build Settings window, click "Build and Run" to build an APK.

📗License

Apache 2.0. Cesium for Unity Samples is free to use as starter project for both commercial and non-commercial use.

About

Sample project for Cesium for Unity

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • ShaderLab 49.9%
  • C# 31.8%
  • Mathematica 9.6%
  • HLSL 8.7%