![]() |
Cesium for Unreal 2.21.0
|
CesiumAzureMapsRasterOverlay.ICesium3DTilesetLifecycleEventReceiver: when an implementation is registered on a tileset (with ACesium3DTileset::SetLifecycleEventReceiver), its functions will be called at various points in a tile's lifecycle, like when a mesh component is created, when a material is instanced, when the tile changes visibility, when it is unloaded, etc.CesiumCreditSystem would not filter out empty credits, resulting in duplicate on-screen delimiters.UCesiumGlobeAnchorComponent could cause the selected components to teleport to 0 degrees longitude and 0 degrees latitude. Now, the geospatial position and orientation fields are hidden while multi-selecting.In addition to the above, this release updates cesium-native from v0.52.0 to v0.53.0. See the changelog for a complete list of changes in cesium-native.
UCesiumGoogleMapTilesRasterOverlay.AssetOptions property to UCesiumIonRasterOverlay.In addition to the above, this release updates cesium-native from v0.51.0 to v0.52.0. See the changelog for a complete list of changes in cesium-native.
Content.CesiumRuntime.h include in CesiumPropertyAttribute.cpp that broke compilation in v2.18.0 on Windows.FCesiumVectorStyle that made polygons use the color mode from LineStyle instead of PolygonStyle.CesiumRasterOverlay component.UCesiumLoadGeoJsonDocumentFromIonAsyncAction that occurred when a Cesium ion server was not specified. The action will now fall back to the default ion server, similar to ACesium3DTileset.In addition to the above, this release updates cesium-native from v0.50.0 to v0.51.0. See the changelog for a complete list of changes in cesium-native.
FCesiumPrimitiveMetadata::GetPropertyAttributeIndices is now deprecated. Use GetPropertyAttributes to directly get the FCesiumPropertyAttributes instead.CesiumGeoJsonDocumentRasterOverlay, allowing stylized GeoJSON to be rasterized and draped over terrain and other 3D Tiles.FCesiumPropertyAttributeProperty to represent glTF property attribute properties and UCesiumPropertyAttributePropertyBlueprintLibrary to retrieve their values.FCesiumPropertyAttribute to represent glTF property attributes and UCesiumPropertyAttributeBlueprintLibrary to act upon them with Blueprints.UCesiumPrimitiveMetadataBlueprintLibrary::GetPropertyAttributes to retrieve the property attributes from a FCesiumPrimitiveMetadata.UCesiumPropertyTexturePropertyBlueprintLibrary::GetInteger64. Although 64-bit integers aren't directly supported by property textures, this enables the lossless retrieval of 32-bit unsigned integers.FCesiumGeocoderServiceAttribution and FCesiumGeocoderServiceFeature.CesiumEllipsoidFunctions was inaccessible outside of the plugin.UCesiumGlobeAnchorComponent::SetEastSouthUpRotation() would throw an exception if no ACesiumGeoreference was found in the level.In addition to the above, this release updates cesium-native from v0.49.0 to v0.50.0. See the changelog for a complete list of changes in cesium-native.
This is the last release of Cesium for Unreal that will support Unreal Engine v5.3. Future versions will require Unreal Engine v5.4+.
UCesiumFeaturesMetadataComponent will now use a default null feature ID of -1 instead of 0.UCesiumFeaturesMetadataComponent now always check for null feature IDs, assuming a default value of -1.In addition to the above, this release updates cesium-native from v0.48.0 to v0.49.0. See the changelog for a complete list of changes in cesium-native.
TRIANGLE_FAN primitives in tile meshes.GEngine when packaging from source, introduced in v2.16.0.UCesiumFeaturesMetadataComponent where multiple references to same feature ID set would cause improper encoding of its feature IDs.ACesiumGeoreference.In addition to the above, this release updates cesium-native from v0.47.0 to v0.48.0. See the changelog for a complete list of changes in cesium-native.
UCesiumMetadataPickingBlueprintLibrary::FindPropertyTableProperty to search for a FCesiumPropertyTableProperty by name on a given UPrimitiveComponent.GoogleTilesTestSetup.FPaths::ProjectUserDir instead of FPaths::EngineUserDir on non-Android and non-iOS platforms, fixing a permissions issue in Development builds.In addition to the above, this release updates cesium-native from v0.46.0 to v0.47.0. See the changelog for a complete list of changes in cesium-native.
WorldHeight Runtime Virtual Texture output is now set to the Z component of the world position.alphaMode=BLEND would be rendered as opaque if its baseColorFactor was not set.In addition to the above, this release updates cesium-native from v0.45.0 to v0.46.0. See the changelog for a complete list of changes in cesium-native.
UCesiumFeaturesMetadataComponent, which broke with the previous release.UCesiumFeaturesMetadataComponent now directly stores FCesiumFeatureMetadataDescription instead of duplicating its inner properties.MLB_AngleMask for masking Material Layers based on a tangent vector.ML_CesiumRVTBaseColorOverlay for Overlaying the BaseColor of an RVT in your material.CesiumPropertyArray, CesiumPropertyTable, CesiumPropertyTableProperty, CesiumPropertyTexture, CesiumPropertyTextureProperty, and CesiumMetadataValue.In addition to the above, this release updates cesium-native from v0.44.3 to v0.45.0. See the changelog for a complete list of changes in cesium-native.
This release updates cesium-native from v0.44.2 to v0.44.3. See the changelog for a complete list of changes in cesium-native.
This release updates cesium-native from v0.44.1 to v0.44.2. See the changelog for a complete list of changes in cesium-native.
This release updates cesium-native from v0.44.0 to v0.44.1. See the changelog for a complete list of changes in cesium-native.
CesiumUrlTemplateRasterOverlay, allowing a raster overlay to be added using tiles requested based on a specified URL template.EstimateTimeZoneForLongitude method to ACesiumSunSky to set a reasonable TimeZone value at the given longitude.ACesiumGeoreference will now adjust the time zone of the ACesiumSunSky instances that reference it, based on the new origin's longitude. This improves user experience when moving the origin to locations where it would be nighttime in the current time zone.RequestHeaders property to Cesium3DTileset, allowing per-tileset headers to be specified.RequestHeaders properties to CesiumTileMapServiceRasterOverlay, CesiumUrlTemplateRasterOverlay, CesiumWebMapServiceRasterOverlay, and CesiumWebMapTileServiceRasterOverlay, allowing per-raster-overlay HTTP headers to be specified.CesiumSubLevelSwitcherComponent that could prevent all sub-levels from loading if a single sub-level failed to load.UCesiumIonServer when running in a packaged build where tilesets are only created at runtime.FMatrix -> FTransform conversion that prevented models with a small scale factor (e.g., where vertex positions are expressed in millimeters) from rendering because their scale was treated as 0.0.SampleHeightMostDetailed blueprint function without a valid tileset.Cesium3DTileset resulting from EditCondition flag.In addition to the above, this release updates cesium-native from v0.43.0 to v0.44.0. See the changelog for a complete list of changes in cesium-native.
FCesiumFeatureIdAttribute::GetFeatureIDForVertex to FCesiumFeatureIdAttribute::GetFeatureID.FCesiumFeatureIdAttribute::GetVertexCount to FCesiumFeatureIdAttribute::GetCount.CesiumSubLevelSwitcherComponent that could prevent all sub-levels from loading if a single sub-level failed to load.This release updates cesium-native from v0.42.0 to v0.43.0. See the changelog for a complete list of changes in cesium-native.
This release updates cesium-native from v0.42.0 to v0.42.1 in order to fix a critical bug when using Google Photorealistic 3D Tiles. See the changelog for a complete list of changes in cesium-native.
This is the last release of Cesium for Unreal that will support Unreal Engine v5.2. Future versions will require Unreal Engine v5.3+.
Cesium3DTileset to generate a tileset by tessellating the surface of the ellipsoid, producing a simple globe tileset without terrain features.SampleHeightMostDetailed on a Cesium3DTileset with a raster overlay.CesiumPolygonRasterOverlay now references CesiumCartographicPolygon instances using TSoftObjectPtr, which allows, for example, a raster overlay in the persistent level to use a polygon in a sub-level.Cesium3DTileset had three or more overlays.In addition to the above, this release updates cesium-native from v0.41.0 to v0.42.0. See the changelog for a complete list of changes in cesium-native.
CircumscribedGroundHeight property to CesiumSunSky. It defaults to 0, which is consistent with the previous behavior. It can be set to a larger value (like 40) to avoid dark splotchy artifacts when zoomed out far from the globe in certain tilesets where geometry extends very far beyond the ellipsoid in the low-detail representation, such as Google Photorealistic 3D Tiles.KHR_materials_unlit.KHR_materials_unlit.CesiumGlobeAnchor properties are no longer shown on the main CesiumSunSky Details panel, because it is almost never necessary to set these. They can still be set on the component's own Details panel if needed.FCesiumSampleHeightResult.In addition to the above, this release updates cesium-native from v0.40.1 to v0.41.0. See the changelog for a complete list of changes in cesium-native.
SampleHeightMostDetailed function to Cesium3DTileset, which asynchronously queries the height of a tileset at a list of positions. It is callable from both C++ and Blueprints.scale, noData, and default values of a property in EXT_strutural_metadata were not correctly passed to the tileset's material.This release updates cesium-native from v0.39.0 to v0.40.1. See the changelog for a complete list of changes in cesium-native.
bAllowAnyoneToDestroyMe set to true by default. This allows them to be dynamically removed and destroyed at runtime via the Blueprint Destroy Component function called from anywhere, including Level Blueprints. Previously, attempting to delete a raster overlay from outside the Actor would result in an error.Refresh on a CesiumRasterOverlay would cause the overlay to appear on the Cesium3DTileset, even if inactive.This release updates cesium-native from v0.38.0 to v0.39.0. See the changelog for a complete list of changes in cesium-native.
bad_any_cast exception when trying to access glTF extensions on non-Windows platforms. This commonly popped up when loading tilesets with metadata.GetInteger64 functions on CesiumMetadataValue, CesiumPropertyArray, and CesiumPropertyTableProperty to always return the default value on non-Windows platforms.UCesiumGlobeAnchorComponent::GetEllipsoid that caused compilation errors on some machines.In addition to the above, this release updates cesium-native from v0.37.0 to v0.38.0. See the changelog for a complete list of changes in cesium-native.
CesiumEllipsoid asset may be specified in the Ellipsoid field of a CesiumGeoreference.CesiumEllipsoid asset, right-click in the Content Drawer and select "Data Asset" under "Miscellaneous." Choose "Cesium Ellipsoid" from the menu that appears.CesiumCartographicRasterOverlay:CesiumSunSky when no viewport is activated in the Editor.UStaticMesh and glm::toMat4.In addition to the above, this release updates cesium-native from v0.36.0 to v0.37.0. See the changelog for a complete list of changes in cesium-native.
CesiumWebMapTileServiceRasterOverlay:Url -> BaseUrlWest -> RectangleWestSouth -> RectangleSouthEast -> RectangleEastNorth -> RectangleNorthUseWebMercatorProjection has been deprecated on CesiumWebMapTileServiceRasterOverlay. Instead, use the Projection enum property to specify between Geographic or WebMercator projection.EXT_mesh_gpu_instancing extension.TileWidth and TileHeight properties to CesiumWebMapTileServiceRasterOverlay.UCesiumFlyToComponent.CesiumTileMapServiceRasterOverlay, CesiumWebMapServiceRasterOverlay, and CesiumWebMapTileServiceRasterOverlay would attempt to load empty URLs.In addition to the above, this release updates cesium-native from v0.35.0 to v0.36.0. See the changelog for a complete list of changes in cesium-native.
This is the last release of Cesium for Unreal that will support Unreal Engine v5.1. Future versions will require Unreal Engine v5.2+.
In addition to the above, this release updates cesium-native from v0.34.0 to v0.35.0. See the changelog for a complete list of changes in cesium-native.
This release updates cesium-native from v0.33.0 to v0.34.0. See the changelog for a complete list of changes in cesium-native.
KHR_texture_transform glTF extension - including rotation - for CesiumFeatureIdTexture and CesiumPropertyTextureProperty.CesiumFeaturesMetadataComponent now generates nodes for KHR_texture_transform if the extension is present in a feature ID texture or property texture property.TEXTUREGROUP_8BitData instead of TEXTUREGROUP_World.CesiumSunSky.In addition to the above, this release updates cesium-native from v0.32.0 to v0.33.0. See the changelog for a complete list of changes in cesium-native.
CesiumWebMapTileServiceRasterOverlay.KHR_texture_transform glTF extension - including rotation - in baseColorTexture, metallicRoughnessTexture, emissiveTexture, normalTexture, and occlusionTexture. The transformation is now applied on the GPU via nodes in the Material, rather than on the CPU by directly modifying texture coordinates.MLB_DitherFade that made glTF materials with an alphaMode of MASK incorrectly appear as fully opaque.CesiumFlyToComponent that could cause the position of the object to shift suddenly at the very end of the flight.CesiumGltfComponent that would cause a crash if the Ignore KHR_materials_unlit setting was enabled on a point cloud.CesiumActors that would cause the editor to crash when running in Standalone mode.EXT_feature_metadata, which was mistakenly removed.In addition to the above, this release updates cesium-native from v0.31.0 to v0.32.0. See the changelog for a complete list of changes in cesium-native.
IonAssetEndpointUrl on Cesium3DTileset and CesiumIonRasterOverlay. Use the new CesiumIonServer property instead.CesiumIonServer data assets.In addition to the above, this release updates cesium-native from v0.30.0 to v0.31.0. See the changelog for a complete list of changes in cesium-native.
EXT_structural_metadata.HttpThreadActiveFrameTimeInSeconds=0.001 to Engine.ini. This results in a major performance improvement for all tilesets, particularly Google Photorealistic 3D Tiles.HttpMaxConnectionsPerServer=40 to Engine.ini. By default, only 16 connections are allowed, which limits the performance when downloading tiles.EditCondition was not parsed correctly and caused Output Log window errors.In addition to the above, this release updates cesium-native from v0.29.0 to v0.30.0. See the changelog for a complete list of changes in cesium-native.
This release no longer supports Unreal Engine v5.0. Unreal Engine v5.1, v5.2, or v5.3 is required.
FCesiumIntegerColor, FCesiumFloatColor, UCesiumFeatureTexturePropertyBlueprintLibrary::GetIntegerColorFromTextureCoordinates and UCesiumFeatureTexturePropertyBlueprintLibrary::GetFloatColorFromTextureCoordinates. Check out the upgrade guide for how retrieve metadata from property textures with the new API.GetTextureCoordinateIndex to GetUnrealUVChannel in both UCesiumFeatureIdTextureBlueprintLibrary and UCesiumPropertyTexturePropertyBlueprintLibrary. Contrary to what the documentation claimed, this function retrieved the index of the texture coordinate set in the Unreal static mesh, which is not necessarily equal to the texture coordinate set index in the glTF primitive. For the latter value, use GetGltfTextureCoordinateSetIndex instead.CesiumCartographicPolygon or CesiumTileExcluder instead.UCesiumPropertyTexturePropertyBlueprintLibrary to retrieve detailed property information and get the values of the property as a certain type. Check out the upgrade guide for how retrieve metadata from property textures with the new API.UCesiumMetadataPickingBlueprintLibrary::FindUVFromHit, which computes the UV coordinates from a line trace hit without requiring "Support UV Hit Info" to be enabled. This can used to retrieve more accurate feature IDs or metadata values by sampling at an intermediary point on the face.GetPropertyTableValuesFromHit and GetPropertyTextureValuesFromHit to UCesiumMetadataPickingBlueprintLibrary to retrieve the respective metadata from a line trace hit. For both functions, the target to sample is specified by index.UCesiumFeatureIdSetBlueprintLibrary::GetFeatureIDFromHit to retrieve the feature ID from a line trace hit on a primitive containing the feature ID set. This returns more accurate values for feature ID textures than GetFeatureIDForVertex.UCesiumPrimitiveFeaturesBlueprintLibrary::GetFeatureIDFromHit to retrieve the feature ID from a line trace hit on a primitive, where the desired feature ID set is specified by index. For feature ID textures, this returns more accurate values than GetFeatureIDFromFace.UCesiumFeatureIdTextureBlueprintLibrary::GetFeatureIDForUV, which samples a feature ID texture with FVector2D UV coordinates.GetGltfTextureCoordinateSetIndex to UCesiumFeatureIdTextureBlueprintLibrary and UCesiumPropertyTexturePropertyBlueprintLibrary to avoid ambiguity with GetUnrealUVChannel.UCesiumMetadataValueBlueprintLibrary::GetValuesAsStrings to convert a map of FCesiumMetadataValues to their string representations.file:/// URLs across all platforms and Unreal Engine versions.CesiumGeoreference.CesiumSubLevelComponent.Cesium3DTileset to have an incorrect transformation.LevelSequenceActor in the level did not have a LevelSequencePlayer assigned.UCesiumFeatureIdTextureBlueprintLibrary::GetFeatureIDForTextureCoordinates has been deprecated. Use UCesiumFeatureIdTextureBlueprintLibrary::GetFeatureIDForUV instead.UCesiumPropertyTexturePropertyBlueprintLibrary::GetSwizzle and UCesiumPropertyTexturePropertyBlueprintLibrary::GetComponentCount have been deprecated, since they are no longer necessary to handle property texture property values in the plugin. Use UCesiumPropertyTexturePropertyBlueprintLibrary::GetChannels instead.UCesiumMetadataPickingBlueprintLibrary::GetMetadataValuesForFace has been deprecated. Use UCesiumMetadataPickingBlueprintLibrary::GetPropertyTableValuesForHit instead.UCesiumMetadataPickingBlueprintLibrary::GetMetadataValuesForFaceAsStrings has been deprecated. Use UCesiumMetadataValueBlueprintLibrary::GetValuesAsStrings to convert the output of UCesiumMetadataPickingBlueprintLibrary::GetPropertyTableValuesForHit instead.UCesiumPropertyTableBlueprintLibrary::GetMetadataValuesForFeatureAsStrings has been deprecated. Use UCesiumMetadataValueBlueprintLibrary::GetValuesAsStrings to convert the output of UCesiumPropertyTableBlueprintLibrary::GetMetadataValuesForFeature instead.In addition to the above, this release updates cesium-native from v0.28.1 to v0.29.0. See the changelog for a complete list of changes in cesium-native.
This is the last release of Cesium for Unreal that will support Unreal Engine v5.0. Future versions will require Unreal Engine v5.1+.
EXT_mesh_features and EXT_structural_metadata extensions respectively. Models with EXT_feature_metadata will still be parsed, but their metadata will no longer be accessible. See the upgrade guide for the full changelog and for tips on upgrading to the new API.CesiumMetadataFeatureTable, UCesiumMetadataFeatureTableBlueprintLibrary, UCesiumMetadataPrimitiveBlueprintLibrary::GetFeatureTables, and UCesiumMetadataUtilityBlueprintLibrary::GetFeatureIDForFace. These have been deprecated since Unreal Engine 4.26.CesiumSunSky now uses a default TransmittanceMinLightElevationAngle value on its SkyAtmosphere component of 90.0 degrees instead of -90.0 degrees. This will generally improve lighting when far from the CesiumGeoreference origin, but it is a breaking change because it may change the lighting conditions in existing levels, particularly at sunrise and sunset.Mobility property on ACesium3DTileset is now obsolete. Instead, use the normal mechanism of setting the root component's mobility.ACesiumGeoreference and UCesiumGlobeAnchorComponent that used glm vector types. Use the versions that work with Unreal types instead.ComputeEastSouthUpToUnreal function on ACesiumGeoreference has been renamed to ComputeEastSouthUpToUnrealTransformation and now returns a matrix that includes the translation component of the transformation. Previously it only included the rotation component.CesiumGlobeAnchorComponent must now be accessed with get/set functions from C++, instead of direct field access.CesiumGlobeAnchorComponent:GetECEF renamed to GetEarthCenteredEarthFixedPositionMoveToECEF renamed to MoveToEarthCenteredEarthFixedPositionInvalidateResolvedGeoreference function on CesiumGlobeAnchorComponent.SubLevelCamera property on CesiumGeoreference has been deprecated, and the georeference no longer automatically handles sub-level transitions. Instead, you must add a CesiumOriginShiftComponent to the Actor to trigger sub-level loading. When loading old levels that contain sub-levels, the plugin will automatically attempt to add this component.FloatingPawn that has been deprecated since v1.3.0.GlobeAwareDefaultPawn. This functionality is now found in CesiumFlyToComponent and can be used with any Pawn or Actor. Existing Blueprints should continue to work, but C++ code will likely require changes.Curves/FlyTo folder. Redirectors should upgrade references to the old names.Curve_AltitudeProfile_Float was renamed to Curve_CesiumFlyToDefaultHeightPercentage_FloatCurve_MaxAltitude_Float was renamed to Curve_CesiumFlyToDefaultMaximumHeightByDistance_FloatCurve_Progress_Float was renamed to Curve_CesiumFlyToDefaultProgress_FloatCesiumGeoreference.CesiumCameraManager instance to use with a Cesium3DTileset can now be specified with a property on the tileset. In addition to offering more flexibility, this avoids the work of finding the camera manager in the level every frame.ACesiumGeoreference, ACesiumCreditSystem, and ACesiumCameraManager instances in the Persistent Level.CesiumTileExcluder actor component. This component can be used to implement custom logic for determining whether a tile should be excluded, either in C++ or Blueprints.ACesiumGeoreference can now act as a parent Actor. By adjusting the georeference's transformation, the entire globe can be located, rotated, and scaled within the Unreal Engine world.AtmosphereHeight, AerialPerspectiveViewDistanceScale, RayleighExponentialDistribution, and MieExponentialDistribution properties to ACesiumSunSky. These have the same function as the properties of the same name on Unreal's built-in SkyAtmosphere component, except that they automatically respond to the scale of the globe.UCesiumWgs84Ellipsoid Blueprint function library class.CesiumGlobeAnchorComponent relative to an East-South-Up coordinate system.ComputeEastSouthUpAtEarthCenteredEarthFixedPositionToUnrealTransformation function to CesiumGeoreference.CesiumOriginShiftComponent. In addition to triggering transitions between sub-levels, this component optionally allows the Unreal world origin to be shifted as the Actor to which it is attached moves. The shifting may be done by either changing the CesiumGeoreference origin or by setting Unreal's OriginLocation property.CesiumSubLevelSwitcherComponent attached to the CesiumGeoreference. Be sure to disable any CesiumOriginShiftComponent instances in your level if you want manual control of sub-level switching.CesiumFlyToComponent to allow animated flights of any Actor or Pawn.ACesiumGeoreference::GetDefaultDefaultGeoreferenceForActor, which checks first for an attachment parent that is a CesiumGeoreference. This way a Cesium3DTileset or similar object will by associated with the CesiumGeoreference it is nested inside by default.CesiumGeoreference.ResolvedGeoreference is now shown in the Editor Details UI for georeferenced objects, next to the Georeference property.ACesiumSunSky that could cause an error when it was created inside a sub-level.ACesiumGeoreference, ACesiumCameraManager, and ACesiumCreditSystem are now created in the Persistent Level, even if the object that triggered their automatic creation (such as ACesium3DTileset) exists in a sub-level. It is very rarely useful to have instances of these objects within a sub-level.ACesiumCreditSystem in a sub-level will no longer cause overlapping and broken-looking credits. However, we still recommend deleting credit system instances from sub-levels.ACesiumCartographicPolygon now operates on the parts of the tileset that are shown in the Editor viewport, even if it is used with a Cesium3DTileset with a non-identity transformation.RF_Public flag set. This could cause problems when converting an existing level to World Partition, or perhaps cause other subtle issues that we haven't realized yet.In addition to the above, this release updates cesium-native from v0.27.3 to v0.28.1. See the changelog for a complete list of changes in cesium-native.
This is the last release of Cesium for Unreal that will support Unreal Engine v5.0. Future versions will require Unreal Engine v5.1+.
In addition to the above, this release updates cesium-native from v0.27.2 to v0.27.3. See the changelog for a complete list of changes in cesium-native.
Cesium3DTileset textures on iOS, so we recommend that you continue to use Unreal Engine 5.2 for the time being if you are deploying to iOS.In addition to the above, this release updates cesium-native from v0.27.1 to v0.27.2. See the changelog for a complete list of changes in cesium-native.
This release fixes an important bug by updating cesium-native from v0.27.0 to v0.27.1. See the changelog for a complete list of changes in cesium-native.
This release updates cesium-native from v0.26.0 to v0.27.0. See the changelog for a complete list of changes in cesium-native.
UnrealLightmass to crash when attempting to build lighting containing static meshes created by a Cesium3DTileset.In addition to the above, this release updates cesium-native from v0.25.1 to v0.26.0. See the changelog for a complete list of changes in cesium-native.
GetGeoreferencedToEllipsoidCenteredTransform and GetEllipsoidCenteredToGeoreferencedTransform methods from GeoTransforms. Because these were transformations between two right-handed coordinate systems, they are not of much use with Unreal's left-handed coordinate system.FlyToGranularityDegrees property for AGlobeAwareDefaultPawn. Flight interpolation is now computed per-frame, so this property is no longer needed. Any code that refers to FlyToGranularityDegrees should be removed or changed to FlyToGranularityDegrees_DEPRECATED to still compile.Scale via Blueprints.ACesiumCameraManager::RemoveCamera. It is available via both Blueprints and C++. This complements the existing ACesiumCameraManager::AddCamera.AGlobeAwareDefaultPawn / DynamicPawn to suddenly move to a very high height for one render frame just as it arrives at its destination during a flight.In addition to the above, this release updates cesium-native from v0.25.0 to v0.25.1. See the changelog for a complete list of changes in cesium-native.
!IsGarbageCollecting() that could occur within ACesiumCreditSystem when flying to different sublevels.Cesium3DTileset, which allow point cloud tilesets to be rendered with attenuation based on geometric error.ACesium3DTileset now emits a warning if the "Enable World Bounds Checks" option is enabled. That option can make the camera fly toward the origin unexpectedly.CesiumGlTFFunction that caused the glTF and 3D Tiles "Ambient Occlusion" value to be 0.0 (instead of the expected 1.0) when the model does not specify an explicit occlusion texture. This could cause some extremely dark shadows.In addition to the above, this release updates cesium-native from v0.24.0 to v0.25.0. See the changelog for a complete list of changes in cesium-native.
Scale property to CesiumGeoreference. This allows the entire globe to be scaled up or down within the Unreal world.ACesiumCartographicPolygon where the standard base class BeginPlay implementation was not called.bUseChaos and bCompilePhysX being obsolete.Starting with this release, Cesium for Unreal requires Unreal Engine v5.0 or later.
In addition to the above, this release updates cesium-native from v0.23.0 to v0.24.0. See the changelog for a complete list of changes in cesium-native.
This will be the last release that supports Unreal Engine v4.27. Future versions will require Unreal Engine v5.0+.
FlyToAltitudeProfileCurve, FlyToProgressCurve, FlyToMaximumAltitudeCurve, FlyToDuration, and FlyToGranularityDegrees properties of GlobeAwareDefaultPawn / DynamicPawn may now be read and written from Blueprints.Cesium3DTileset to ignore the KHR_materials_unlit extension entirely and use normal lighting and shadows.CreateNavCollision property to Cesium3DTileset. When enabled, CreateNavCollision is called on the static meshes created for tiles.KHR_materials_unlit extension when the sun is close to the horizon.In addition to the above, this release updates cesium-native from v0.22.0 to v0.23.0. See the changelog for a complete list of changes in cesium-native.
pnts).In addition to the above, this release updates cesium-native from v0.21.3 to v0.22.1. See the changelog for a complete list of changes in cesium-native.
KHR_materials_unlit glTF extension. This is rendered in Unreal Engine by disabling shadows and making all normals point up (along the ellipsoid surface normal).In addition to the above, this release updates cesium-native from v0.21.2 to v0.21.3. See the changelog for a complete list of changes in cesium-native.
UMG and other modules as dependencies.CesiumGeoreference.CesiumIonRasterOverlay.In addition to the above, this release updates cesium-native from v0.21.1 to v0.21.2. See the changelog for a complete list of changes in cesium-native.
In addition to the above, this release updates cesium-native from v0.21.0 to v0.21.1. See the changelog for a complete list of changes in cesium-native.
CesiumGeoreference: ComputeEastNorthUp, TransformRotatorEastNorthUpToUnreal, and TransformRotatorUnrealToEastNorthUp. These functions have been replaced with reliable "EastSouthUp" counterparts.In addition to the above, this release updates cesium-native from v0.20.0 to v0.21.0. See the changelog for a complete list of changes in cesium-native.
Cesium3DTileset to change the tileset's mobility, rather than always using Static mobility. This allows users to make a tileset movable at runtime, if needed.ACesiumCreditSystem now has a Blueprint-accessible property for the CreditsWidget. This is useful to, for example, move the credits to an in-game billboard rather than a 2D overlay.In addition to the above, this release updates cesium-native from v0.19.0 to v0.20.0. See the changelog for a complete list of changes in cesium-native.
TranslucentMaterial property on Cesium3DTileset allows a custom material to be used to render these translucent portions.Rendering -> Use Lod Transitions option on Cesium3DTileset to smoothly dither between levels-of-detail rather than switching abruptly.EXT_texture_webp extension.In addition to the above, this release updates cesium-native from v0.18.1 to v0.19.0. See the changelog for a complete list of changes in cesium-native.
In addition to the above, this release updates cesium-native from v0.18.0 to v0.18.1. See the changelog for a complete list of changes in cesium-native.
GetDPIScale, meaning that devices with high-DPI displays will get less detail and higher performance than they did in previous versions. This can be disabled - and the previous behavior restored - by disabling the "Scale Level Of Detail By DPI" in Project Settings under Plugins -> Cesium, or by changing the "Apply Dpi Scaling" property on individual Tileset Actors.ACesium3DTileset to control occlusion culling and turn it off if necessary.UCesiumGltfPrimitiveComponent now has static mobility, allowing it to take advantage of several rendering optimizations only available for static objects.OnTilesetLoaded even that is invoked when the current tileset has finished loading. It is available from C++ and Blueprints.GetLoadProgress method that returns the current load percentage of the tileset. It is available from C++ and Blueprints.OnFlightComplete for when Dynamic Pawn completes flight.OnFlightInterrupt for when Dynamic Pawn's flying is interrupted.In addition to the above, this release updates cesium-native from v0.17.0 to v0.18.0. See the changelog for a complete list of changes in cesium-native.
ExcludeTilesInside to ExcludeSelectedTiles on the CesiumPolygonRasterOverlay. A core redirect was added to remap the property value in existing projects.InvertSelection option on CesiumPolygonRasterOverlay to rasterize outside the selection instead of inside. When used in conjunction with the ExcludeSelectedTiles option, tiles completely outside the polygon selection will be culled, instead of the tiles inside.In addition to the above, this release updates cesium-native from v0.15.1 to v0.16.0, fixing an important bug. See the changelog for a complete list of changes in cesium-native.
UObject pointers.In addition to the above, this release updates cesium-native from v0.15.1 to v0.15.2, fixing an important bug and updating some third-party libraries. See the changelog for a complete list of changes in cesium-native.
This release updates cesium-native from v0.15.0 to v0.15.1, fixing an important bug. See the changelog for a complete list of changes in cesium-native.
EXT_feature_metadata.EXT_feature_metadata (and upgraded batch tables).EXT_feature_metadata extension.UCesiumEncodedMetadataComponent to enable styling with the metadata from the EXT_feature_metadata extension. This component provides a convenient way to query for existing metadata, dictate which metadata properties to encode for styling, and generate a starter material layer to access the wanted properties.In addition to the above, this release updates cesium-native from v0.14.0 to v0.15.0. See the changelog for a complete list of changes in cesium-native.
KeepWorldOriginNearCamera, OriginRebaseInsideSublevels, and MaximumWorldOriginDistanceFromCamera options from CesiumGeoreference. These options are not usually necessary with Unreal Engine 5's double-precision coordinates.WorldOriginCamera property on CesiumGeoreference to SubLevelCamera, as this property is now only used for switching sub-levels. Core Redirects should automatically make this change in Blueprints.Inaccurate from the name of a large number of Blueprint functions, now that Unreal Engine 5 supports double-precision in Blueprints. Core Redirects should automatically make this change in Blueprints.World texture group, which yields much higher quality on many platforms by enabling anisotrpic texture filtering. Shimmering of overlay textures in the distance should be drastically reduced.RasterOverlay give the user control over the texture group, texture filtering, and mipmapping used for overlay textures.CesiumWebMapServiceRasterOverlay to pull raster overlays from a WMS server.Cesium3DTileset and CesiumRasterOverlay credits on screen, rather than in a separate popup.In addition to the above, this release updates cesium-native from v0.13.0 to v0.14.0. See the changelog for a complete list of changes in cesium-native.
CESIUM_RTC glTF extension.In addition to the above, this release updates cesium-native from v0.12.0 to v0.13.0. See the changelog for a complete list of changes in cesium-native.
CesiumSunSky have been renamed. CoreRedirects have been provided to handle the renames automatically for Blueprints.EnableMobileRendering to UseMobileRenderingAdjustAtmosphereRadius to UpdateAtmosphereRadiusFCesiumCamera and ACesiumCameraManager can be used to register and update custom camera views into Cesium tilesets.CesiumSunSky parameters in the Details Panel.CesiumGlobeAnchorComponent parameters in the Details Panel.In addition to the above, this release updates cesium-native from v0.11.0 to v0.12.0. See the changelog for a complete list of changes in cesium-native.
In addition to the above, this release updates cesium-native from v0.10.0 to v0.11.0. See the changelog for a complete list of changes in cesium-native.
In this release, the cesium-native binaries are built using Xcode 11.3 on macOS instead of Xcode 12. Other platforms are unchanged from v1.8.0.
Cesium3DTileset now has options for enabling custom depth and stencil buffer.CesiumDebugColorizeTilesRasterOverlay to visualize how a tileset is divided into tiles.Log Selection Stats debug option to the Cesium3DTileset Actor.GlobeAwareDefaultPawn (and its derived classes, notably DynamicPawn) to completely ignore short flights.In addition to the above, this release updates cesium-native from v0.9.0 to v0.10.0. See the changelog for a complete list of changes in cesium-native.
CesiumGlobeAnchorParent, which was deprecated in v1.3.0. The CesiumGlobeAnchorParent functionality can be recreated using an empty actor with a CesiumGlobeAnchorComponent.FixTransformOnOriginRebase property from CesiumGeoreferenceComponent, and the component now always acts as if it is enabled. This should now work correctly even for objects that are moved by physics or other Unreal Engine mechanisms.SnapToEastSouthUp function on CesiumGeoreference no longer resets the Scale back to 1.0. It only modifies the rotation.CesiumGeoreferenceComponent Blueprints and C++ functions no longer take a MaintainRelativeOrientation parameter. Instead, this behavior is controlled by the AdjustOrientationForGlobeWhenMoving property.MoveToLongitudeLatitudeHeightInaccurateMoveToLongitudeLatitudeHeightMoveToECEFInaccurateMoveToECEFCesiumGeoreferenceComponent to CesiumGlobeAnchorComponent.CesiumSunSky has been converted from Blueprints to C++. Backward compatibility should be preserved in most cases, but some less common scenarios may break.GlobeAwareDefaultPawn, DynamicPawn, and CesiumSunSky no longer have a Georeference property. Instead, they have a CesiumGlobeAnchor component that has a Georeference property.Georeference property on most Cesium types can now be null if it has not been set explicitly in the Editor. To get the effective Georeference, including one that has been discovered in the level, use the ResolvedGeoreference property or call the ResolveGeoreference function.CheckForNewSubLevels and JumpToCurrentLevel functions in CesiumGeoreference have been removed. New sub-levels now automatically appear without an explicit check, and the current sub-level can be changed using the standard Unreal Engine Levels panel.CurrentLevelIndex property from CesiumGeoreference. The sub-level that is currently active in the Editor can be queried with the GetCurrentLevel function of the World.SunSky property from CesiumGeoreference. The CesiumSunSky now holds a reference to the CesiumGeoreference, rather than the other way around.CesiumGeoreference have been renamed. CoreRedirects have been provided to handle the renames automatically for Blueprints.TransformLongitudeLatitudeHeightToUe to TransformLongitudeLatitudeHeightToUnrealInaccurateTransformLongitudeLatitudeHeightToUe to InaccurateTransformLongitudeLatitudeHeightToUnrealTransformUeToLongitudeLatitudeHeight to TransformLongitudeLatitudeHeightToUnrealInaccurateTransformUeToLongitudeLatitudeHeight to InaccurateTransformUnrealToLongitudeLatitudeHeightTransformEcefToUe to TransformEcefToUnrealInaccurateTransformEcefToUe to InaccurateTransformEcefToUnrealTransformUeToEcef to TransformUnrealToEcefInaccurateTransformUeToEcef to InaccurateTransformUnrealToEcefTransformRotatorUeToEnu to TransformRotatorUnrealToEastNorthUpInaccurateTransformRotatorUeToEnu to InaccurateTransformRotatorUnrealToEastNorthUpTransformRotatorEnuToUe to TransformRotatorEastNorthUpToUnrealInaccurateTransformRotatorEnuToUe to InaccurateTransformRotatorEastNorthUpToUnrealCesiumGeoreference have been removed:GetGeoreferencedToEllipsoidCenteredTransform and GetEllipsoidCenteredToGeoreferencedTransform moved to GeoTransforms, which is accessible via the getGeoTransforms function on CesiumGeoreference.GetUnrealWorldToEllipsoidCenteredTransform has been replaced with TransformUnrealToEcef except that the latter takes standard Unreal world coordinates rather than absolute world coordinates. If you have absolute world coordinates, subtract the World's OriginLocation before calling the new function.GetEllipsoidCenteredToUnrealWorldTransform has been replaced with TransformEcefToUnreal except that the latter returns standard Unreal world coordinates rather than absolute world coordinates. If you want absolute world coordinates, add the World's OriginLocation to the return value.AddGeoreferencedObject should be replaced with a subscription to the new OnGeoreferenceUpdated event.CesiumSunSky now automatically adjusts the atmosphere size based on the player Pawn's position to avoid tiled artifacts in the atmosphere when viewing the globe from far away.GlobeAwareDefaultPawn and derived classes like DynamicPawn now have a CesiumGlobeAnchorComponent attached to them. This allows more consistent movement on the globe, and allows the pawn's Longitude/Latitude/Height or ECEF coordinates to be specified directly in the Editor.CesiumSunSky now has an EnableMobileRendering flag that, when enabled, switches to a mobile-compatible atmosphere rendering technique.CesiumCartographicPolygon's GlobeAnchor and Polygon are now exposed in the Editor and to Blueprints.InaccurateGetLongitudeLatitudeHeight and InaccurateGetECEF functions to CesiumGlobeAnchorComponent, allowing access to the current position of a globe-anchored Actor from Blueprints.CesiumGeoreference and CesiumCreditSystem object in the Persistent Level when these properties are left unset. For best results, we suggest removing all instances of these objects from sub-levels.CesiumGlobeAnchor properties.PlatformData and renderer resources associated with UTexture2D instances created for raster overlays when the textures are no longer needed. By relying less on the Unreal Engine garbage collector, this helps keep memory usage lower. It also keeps memory from going up so quickly in the Editor, which by default does not run the garbage collector at all.In addition to the above, this release updates cesium-native from v0.8.0 to v0.9.0. See the changelog for a complete list of changes in cesium-native.
In addition to the above, this release updates cesium-native from v0.7.2 to v0.8.0. See the changelog for a complete list of changes in cesium-native.
This release only updates cesium-native from v0.7.1 to v0.7.2. See the changelog for a complete list of changes in cesium-native.
MaximumCachedBytes property to ACesium3DTileset.GlobeAwareDefaultPawn::FlyToLocation was called when the pawn was not possessed.DynamicPawn that caused a divide-by-zero message to be printed to the Output Log.In addition to the above, this release updates cesium-native from v0.7.0 to v0.7.1. See the changelog for a complete list of changes in cesium-native.
ACesium3DTileset::OpacityMaskMaterial. The regular Material property is used instead.UCesiumMetadataFeatureTableBlueprintLibrary::GetPropertiesForFeatureID to UCesiumMetadataFeatureTableBlueprintLibrary::GetMetadataValuesForFeatureID. This is a breaking change for C++ code but Blueprints should be unaffected because of a CoreRedirect.UCesiumMetadataFeatureTableBlueprintLibrary::GetPropertiesAsStringsForFeatureID to UCesiumMetadataFeatureTableBlueprintLibrary::GetMetadataValuesAsStringForFeatureID. This is a breaking change for C++ code but it was not previously exposed to Blueprints.ASceneCapture2D with ACesium3DTileset actors.ACesium3DTileset to optionally generate smooth normals for glTFs that originally did not have normals.ACesium3DTileset to disable the creation of physics meshes for its tiles.UCesiumMetadataFeatureTableBlueprintLibrary::GetMetadataValuesAsStringForFeatureID, UCesiumMetadataFeatureTableBlueprintLibrary::GetProperties, and UCesiumMetadataPrimitiveBlueprintLibrary::GetFirstVertexIDFromFaceID callable from Blueprints.UCesiumGltfComponent.In addition to the above, this release updates cesium-native from v0.6.0 to v0.7.0. See the changelog for a complete list of changes in cesium-native.
EXT_feature_metadata extension or from 3D Tiles with a B3DM batch table and accessing it from Blueprints.ACesium3DTileset to inform the tile selection algorithm.In addition to the above, this release updates cesium-native from v0.5.0 to v0.6.0. See the changelog for a complete list of changes in cesium-native.
AlwaysIncludeTangents property on Cesium3DTileset to force them to be generated like they were in previous versions.CesiumSunSky or a DynamicPawn.Editor Preferences -> Use Small Tool Bar Icons is enabled.BYTE, UNSIGNED_BYTE, SHORT, and UNSIGNED_SHORT.In addition to the above, this release updates cesium-native from v0.4.0 to v0.5.0. See the changelog for a complete list of changes in cesium-native.
private. Setter and getter methods are now provided for modifying them in Blueprints and C++.CesiumGlobeAnchorParent and FloatingPawn. The CesiumGlobeAnchorParent functionality can be recreated using an empty actor with a CesiumGeoreferenceComponent. The FloatingPawn is now replaced by the DynamicPawn. In a future release, the DynamicPawn will be renamed to CesiumFloatingPawn.Cesium3DTileset::LoadTileset.CesiumGeoreference and CesiumGeoreferenceComponent blueprint editable.UPROPERTY user inputs to be in valid ranges.M_CesiumOverlayWater and M_CesiumOverlayComplexWater materials for use with water tiles.TeleportWhenUpdatingTransform boolean property to CesiumGeoreferenceComponent.CesiumSunSky.CesiumSunSky, rather than the embedded DirectionalLight component.translation, rotation, and scale properties to be ignored even if the node had no matrix.Materials subfolder.CesiumGeoreference and CesiumGeoreferenceComponent Details panels.In addition to the above, this release updates cesium-native from v0.3.1 to v0.4.0. See the changelog for a complete list of changes in cesium-native.
GlobeAwareDefaultPawn lost its georeference during playmode.CesiumGeoreference were being initialized to zero instead of identity.In addition to the above, this release updates cesium-native from v0.3.0 to v0.3.1. See the changelog for a complete list of changes in cesium-native.
CesiumGeoreferenceComponent wasn't updating in certain cases.FEditorDelegates::OnFocusViewportOnActors is no longer unnecessarily subscribed to multiple times.Loading tileset ... is now only written to the output log when the tileset actually needs to be reloaded.ACesiumGeoreference::TransformEcefToUe to be much less precise than expected.BodyInstance property on Cesium3DTileset to the Collision category so that it can be modified in the Editor.gltfUpAxis property in a tileset asset dictionary. Although this property is not part of the specification, there are many existing assets that use this property and had been shown with a wrong rotation otherwise.Display to Verbose. With default settings, the output will no longer be displayed in the console, but only written to the log file.CesiumIonClient::Connection.BodyInstance property to Cesium3DTileset so that collision profiles can be configured.Cesium3DTileset. While likely to change in the future, it already provides a way to exclude parts of a 3D Tiles tileset to make room for another.metallicFactor of 0.0 and a roughnessFactor of 1.0. Previously the default glTF material was used, which has a metallicFactor of 1.0, leading to an undesirable appearance.BingMapsRasterOverlay purposely requests that the Bing servers return a zero-length image for non-existent tiles.Material property of ACesium3DTiles is now a UMaterialInterface instead of a UMaterial, allowing more flexibility in the types of materials that can be used.Cesium3DTileset does not have a CesiumGeoreference or it is not valid.In addition to the above, this release updates cesium-native from v0.1.0 to v0.2.0. See the changelog for a complete list of changes in cesium-native.
quantized-mesh terrain loading and rendering