Skip to content

Cesium for Unreal v2.0.0

Compare
Choose a tag to compare
@kring kring released this 01 Nov 12:25
84ba3a1

This release includes support for Unreal Engine v5.1, v5.2, and v5.3 for Windows, Linux, macOS, Android, and iOS. Please select the appropriate ZIP for your version.

Breaking Changes 📣
  • Removed FCesiumIntegerColor, FCesiumFloatColor, UCesiumFeatureTexturePropertyBlueprintLibrary::GetIntegerColorFromTextureCoordinates and UCesiumFeatureTexturePropertyBlueprintLibrary::GetFloatColorFromTextureCoordinates. Check out the upgrade guide for how retrieve metadata from property textures with the new API.
  • Renamed 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.
  • Removed the old "exclusion zones" feature, which has been deprecated since v1.11.0. Use CesiumCartographicPolygon or CesiumTileExcluder instead.
Additions 🎉
  • Added new functions to 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.
  • Added 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.
  • Added 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.
  • Added 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.
  • Added 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.
  • Added UCesiumFeatureIdTextureBlueprintLibrary::GetFeatureIDForUV, which samples a feature ID texture with FVector2D UV coordinates.
  • Added GetGltfTextureCoordinateSetIndex to UCesiumFeatureIdTextureBlueprintLibrary and UCesiumPropertyTexturePropertyBlueprintLibrary to avoid ambiguity with GetUnrealUVChannel.
  • Added UCesiumMetadataValueBlueprintLibrary::GetValuesAsStrings to convert a map of FCesiumMetadataValues to their string representations.
  • Added support for file:/// URLs across all platforms and Unreal Engine versions.
  • Added "Create Sub Level Here" button on CesiumGeoreference.
  • Added "Place Georeference Origin Here" button to CesiumSubLevelComponent.
  • Added "Google Photorealistic 3D Tiles" to the Quick Add panel.
Fixes 🔧
  • Fixed a bug that could cause tiles in a Cesium3DTileset to have an incorrect transformation.
  • Fixed a crash that occurred when a LevelSequenceActor in the level did not have a LevelSequencePlayer assigned.
  • Fixed a bug that would spam Georeference-related messages to the log when editing a globe anchor component that is not embedded in a world. For example, when editing a Blueprint asset with a globe anchor.
  • Fixed several problems that could cause tilesets in sub-levels to be misaligned with the rest of the globe.
Deprecated ⌛
  • 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.