{"id":19500208,"url":"https://github.com/cesiumgs/cesium-native","last_synced_at":"2025-05-14T13:07:57.714Z","repository":{"id":37294709,"uuid":"287389985","full_name":"CesiumGS/cesium-native","owner":"CesiumGS","description":null,"archived":false,"fork":false,"pushed_at":"2025-05-13T11:02:48.000Z","size":129556,"stargazers_count":491,"open_issues_count":125,"forks_count":229,"subscribers_count":29,"default_branch":"main","last_synced_at":"2025-05-13T12:22:12.961Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CesiumGS.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-08-13T22:15:00.000Z","updated_at":"2025-05-12T07:11:20.000Z","dependencies_parsed_at":"2023-12-19T14:59:47.949Z","dependency_job_id":"49c7e47f-ac19-4f5c-9599-60ff9cd6422d","html_url":"https://github.com/CesiumGS/cesium-native","commit_stats":null,"previous_names":[],"tags_count":71,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CesiumGS%2Fcesium-native","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CesiumGS%2Fcesium-native/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CesiumGS%2Fcesium-native/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CesiumGS%2Fcesium-native/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CesiumGS","download_url":"https://codeload.github.com/CesiumGS/cesium-native/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254149959,"owners_count":22022851,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T22:07:53.203Z","updated_at":"2025-05-14T13:07:52.701Z","avatar_url":"https://github.com/CesiumGS.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cesium Native\n\n[![License](https://img.shields.io/:license-Apache_2.0-blue.svg)](https://github.com/CesiumGS/cesium-native/blob/main/LICENSE)\n[![Build Status](https://github.com/CesiumGS/cesium-native/actions/workflows/build.yml/badge.svg)](https://github.com/CesiumGS/cesium-native/actions/workflows/build.yml)\n[![Release](https://img.shields.io/github/v/tag/CesiumGS/cesium-native?label=release)](https://github.com/CesiumGS/cesium-native/tags)\n\n📚\u003ca href=\"https://cesium.com/learn/cesium-native/ref-doc/\"\u003eDocumentation\u003c/a\u003e - 📒\u003ca href=\"CHANGES.md\"\u003eChange Log\u003c/a\u003e - 💬\u003ca href=\"https://community.cesium.com/\"\u003eCommunity Forums\u003c/a\u003e\n\n## 📖About\n\nCesium Native is a set of C++ libraries for 3D geospatial, including:\n\n* [3D Tiles](https://github.com/CesiumGS/3d-tiles) runtime streaming\n* lightweight glTF serialization and deserialization\n* high-precision 3D geospatial math types and functions, including support for global-scale WGS84 ellipsoids.\n* support for draping raster overlays from WMS, TMS, WMTS, and other sources over 3D tilesets\n\nCesium Native powers Cesium's runtime integrations for [Cesium for Unreal](https://github.com/CesiumGS/cesium-unreal), [Cesium for Unity](https://github.com/CesiumGS/cesium-unity), [Cesium for Omniverse](https://github.com/CesiumGS/cesium-omniverse), and [Cesium for O3DE](https://github.com/CesiumGS/cesium-o3de). Cesium Native is the foundational layer for any 3D geospatial software, especially those that want to stream 3D Tiles. See [Projects Using Cesium Native](#projects-using-cesium-native) for a list of projects currently integrating with Cesium Native.\n\n![Cesium Platform and Ecosystem](./doc/img/integration-ecosystem-diagram.png)\n\n\u003cp align=\"center\"\u003e\u003cem\u003eA high-level Cesium platform architecture with the runtime integrations powered by Cesium Native and streaming content from Cesium ion.\u003c/em\u003e\u003c/p\u003e\n\n## 📷Screenshots\n\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e\n        \u003c!--! \\if DOXYGEN_EXCLUDE --\u003e\n        \u003cimg src=\"doc/img/screenshot-googleplex.jpg\" alt=\"Googleplex\" /\u003e\n        \u003c!--! \\endif --\u003e\n        \u003c!--! \\image html screenshot-googleplex.jpg --\u003e\n        \u003cp align=\"center\"\u003e\u003csub\u003eThe Googleplex in Mountain View, California, USA, visualized with Google Photorealistic 3D Tiles in Cesium for Unity.\u003c/sub\u003e\u003c/p\u003e\n      \u003c/td\u003e\n      \u003ctd\u003e\n        \u003c!--! \\if DOXYGEN_EXCLUDE --\u003e\n        \u003cimg src=\"doc/img/screenshot-ny-metadata.jpg\" alt=\"New York\" /\u003e\n        \u003c!--! \\endif --\u003e\n        \u003c!--! \\image html screenshot-ny-metadata.jpg --\u003e\n        \u003cp align=\"center\"\u003e\u003csub\u003eCesium OSM Buildings in Cesium for Unreal with shading from metadata on building height and age.\u003c/sub\u003e\u003c/p\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e\n        \u003c!--! \\if DOXYGEN_EXCLUDE --\u003e\n        \u003cimg src=\"doc/img/screenshot-copernicus-crater.jpg\" alt=\"Copernicus Crater\" /\u003e\n        \u003c!--! \\endif --\u003e\n        \u003c!--! \\image html screenshot-copernicus-crater.jpg --\u003e\n        \u003cp align=\"center\"\u003e\u003csub\u003eThe Copernicus Crater, visualized with Cesium Moon Terrain in Cesium for Unreal.\u003cbr/\u003e\u0026nbsp;\u003c!-- fake third line to align the two images and captions --\u003e\u003c/sub\u003e\u003c/p\u003e\n      \u003c/td\u003e\n      \u003ctd\u003e\n        \u003c!--! \\if DOXYGEN_EXCLUDE --\u003e\n        \u003cimg src=\"doc/img/screenshot-san-francisco.jpg\" alt=\"San Francisco\" /\u003e\n        \u003c!--! \\endif --\u003e\n        \u003c!--! \\image html screenshot-san-francisco.jpg --\u003e\n        \u003cp align=\"center\"\u003e\u003csub\u003eCesium for Omniverse scene set in San Francisco, California, USA. Data courtesy Aerometrex.\u003c/sub\u003e\u003c/p\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n## 🗃️Libraries Overview\n\n| Library                        | Description                                                                                                     |\n| ------------------------------ | --------------------------------------------------------------------------------------------------------------- |\n| **Cesium3DTiles**              | Lightweight 3D Tiles classes.                                                                                   |\n| **Cesium3DTilesContent**       | Classes that support loading and converting 3D Tiles tile content.                                              |\n| **Cesium3DTilesReader**        | 3D Tiles deserialization, including 3D Tiles extension support.                                                 |\n| **Cesium3DTilesWriter**        | 3D Tiles serialization, including 3D Tiles extension support.                                                   |\n| **Cesium3DTilesSelection**     | Runtime streaming, level of detail selection, culling, cache management, and decoding of 3D Tiles.              |\n| **CesiumAsync**                | Classes for multi-threaded asynchronous tasks.                                                                  |\n| **CesiumClientCommon**         | Functionality shared between ion and iTwin client implementations, primarily shared authentication code.        |\n| **CesiumGeometry**             | Common 3D geometry classes; and bounds testing, intersection testing, and spatial indexing algorithms.          |\n| **CesiumGeospatial**           | 3D geospatial math types and functions for ellipsoids, transforms, projections.                                 |\n| **CesiumGltf**                 | Lightweight glTF processing and optimization functions.                                                         |\n| **CesiumGltfContent**          | Classes that support manipulating the content of a glTF.                                                        |\n| **CesiumGltfReader**           | glTF deserialization / decoding, including glTF extension support (`KHR_draco_mesh_compression` etc).           |\n| **CesiumGltfWriter**           | glTF serialization / encoding, including glTF extension support.                                                |\n| **CesiumIonClient**            | Functions to access [Cesium ion](https://cesium.com/cesium-ion/) accounts and 3D tilesets using ion's REST API. |\n| **CesiumITwinClient**          | Functions to access the [Bentley iTwin](https://www.bentley.com/software/itwin-platform/) platform.             |\n| **CesiumJsonReader**           | Reads JSON from a buffer into statically-typed classes.                                                         |\n| **CesiumJsonWriter**           | Writes JSON from statically-typed classes into a buffer.                                                        |\n| **CesiumQuantizedMeshTerrain** | Classes for accessing terrain in the [quantized-mesh-1.0](https://github.com/CesiumGS/quantized-mesh) format.   |\n| **CesiumRasterOverlays**       | Classes for raster overlays, which allow draping massive 2D textures over a model.                              |\n| **CesiumUtility**              | Utility functions for JSON parsing, URI processing, credits, etc.                                               |\n\n## 📗License\n\n[Apache 2.0](http://www.apache.org/licenses/LICENSE-2.0.html). Cesium Native is free for both commercial and non-commercial use.\n\n## 🔧Projects Using Cesium Native\n\nThe following official Cesium integrations are built on top of Cesium Native:\n\n- [Cesium for Unreal](https://github.com/CesiumGS/cesium-unreal)\n- [Cesium for Unity](https://github.com/CesiumGS/cesium-unity)\n- [Cesium for Omniverse](https://github.com/CesiumGS/cesium-omniverse)\n- [Cesium for O3DE](https://github.com/CesiumGS/cesium-o3de)\n\nIn addition, Cesium Native has been used by the community to build projects including:\n- [vsgCs](https://github.com/timoore/vsgCs) integrates Cesium Native with VulkanSceneGraph.\n- [osgEarth](https://github.com/gwaldron/osgearth) uses Cesium Native to load 3D Tiles in OpenSceneGraph.\n\nIf you have a project that integrates with Cesium Native that isn't on this list yet, please let us know!\n\n## ⌛ Backward Compatibility\n\nCesium Native currently does not have any measures for deprecation or backwards compatibility. This grants us the mobility needed for rapid, iterative development.\n\nBreaking changes can be made without warning, but they should be well-documented under the `Breaking Changes` section in [CHANGES.md](CHANGES.md).\n\n\u003e [!note]\n\u003e This will change when Cesium Native is officially released as v1.0.0 with a stabilized API.\n\n## 💻Developing with Cesium Native\n\nSee the [Developer Setup Guide](doc/topics/developer-setup.md) to learn how to set up a development environment with Cesium Native and begin developing with it.\n\n## ⭐Contributing\n\nAre you interested in contributing to Cesium Native's development? Contributions can come in many forms, from answering questions to creating issues and pull requests. See our [Contribution Guide](CONTRIBUTING.md) to find out how to get started!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcesiumgs%2Fcesium-native","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcesiumgs%2Fcesium-native","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcesiumgs%2Fcesium-native/lists"}