Skip to content

Commit 830aa59

Browse files
committed
Merge remote-tracking branch 'origin/main' into fix/multiselect-no-llh
2 parents 2344e31 + 1d61f76 commit 830aa59

29 files changed

+689
-114
lines changed

CHANGES.md

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,35 @@
11
# Change Log {#changes}
22

3-
### ???
3+
### v2.20.0 - 2025-10-01
4+
5+
##### Additions :tada:
6+
7+
- Added support for rendering glTFs with line primitives.
8+
- Added `UCesiumGoogleMapTilesRasterOverlay`.
9+
- Added `AssetOptions` property to `UCesiumIonRasterOverlay`.
10+
11+
In addition to the above, this release updates [cesium-native](https://github.com/CesiumGS/cesium-native) from v0.51.0 to v0.52.0. See the [changelog](https://github.com/CesiumGS/cesium-native/blob/main/CHANGES.md) for a complete list of changes in cesium-native.
12+
13+
### v2.19.1 - 2025-09-02
14+
15+
##### Fixes :wrench:
16+
17+
- Fixed a bug that could cause incorrect ellipsoid parameters to be used when loading a level.
18+
19+
### v2.19.0 - 2025-09-02
20+
21+
##### Additions :tada:
22+
23+
- Added assets for the IAU2015 Moon and Mars ellipsoids under `Content`.
424

525
##### Fixes :wrench:
626

727
- Added a missing `CesiumRuntime.h` include in `CesiumPropertyAttribute.cpp` that broke compilation in v2.18.0 on Windows.
28+
- Fixed a bug in `FCesiumVectorStyle` that made polygons use the color mode from `LineStyle` instead of `PolygonStyle`.
29+
- Fixed a bug that could cause a crash when undoing and redoing deletion of a `CesiumRasterOverlay` component.
30+
- Fixed a crash in `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`.
31+
32+
In addition to the above, this release updates [cesium-native](https://github.com/CesiumGS/cesium-native) from v0.50.0 to v0.51.0. See the [changelog](https://github.com/CesiumGS/cesium-native/blob/main/CHANGES.md) for a complete list of changes in cesium-native.
833

934
### v2.18.0 - 2025-08-01
1035

CesiumForUnreal.uplugin

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"FileVersion": 3,
3-
"Version": 78,
4-
"VersionName": "2.18.0",
3+
"Version": 81,
4+
"VersionName": "2.20.0",
55
"FriendlyName": "Cesium for Unreal",
66
"Description": "Unlock the 3D geospatial ecosystem in Unreal Engine with real-world 3D content and a high accuracy full-scale WGS84 globe.",
77
"Category": "Geospatial",
1.48 KB
Binary file not shown.
1.48 KB
Binary file not shown.

Content/Ellipsoids/WGS84.uasset

1.45 KB
Binary file not shown.

Content/WGS84.uasset

-1.4 KB
Binary file not shown.

Documentation/developer-setup-windows-gotchas.md

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,30 @@ With that, all builds invoked by Unreal Build Tool should use the chosen compile
4646

4747
If you've followed the instructions above, and Unreal Build Tool is now building Cesium for Unreal with v14.38 of the compiler, then you will likely get linker errors because the cesium-native and third-party dependencies are both still built with the newer version of the compiler.
4848

49-
vcpkg has hard-coded logic to choose the very latest version of the compiler that you have installed. It completely ignores all the usual ways that different compiler versions can be selected, such as setting the defaults file (`"C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\Microsoft.VCToolsVersion.default.props"`), setting environment variables or running the `vcvarsall` script. The _only_ way to choose a compiler for vcpkg to use, as far as we know, is by explicitly specifying it in a vcpkg triplet file. So, to build with 14.38, edit the `extern/vcpkg-overlays/triplets/x64-windows-unreal.cmake` file in the `cesium-unreal` repo and add this line to the end of it:
49+
vcpkg has hard-coded logic to choose the very latest version of the compiler that you have installed. It completely ignores all the usual ways that different compiler versions can be selected, such as setting the defaults file (`"C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\Microsoft.VCToolsVersion.default.props"`), setting environment variables or running the `vcvarsall` script.
50+
51+
The easiest way to select a compiler for vcpkg to use is to set the `VCPKG_PLATFORM_TOOLSET_VERSION` environment variable. Despite the name, this is not built-in vcpkg functionality, but is instead something that our `x64-windows-unreal.cmake` triplet file looks for explicitly. To set it, run the following in a PowerShell window:
52+
53+
```powershell
54+
$env:VCPKG_PLATFORM_TOOLSET_VERSION = "14.38"
55+
```
56+
57+
Or in a CMD prompt, run:
58+
59+
```bat
60+
set VCPKG_PLATFORM_TOOLSET_VERSION=14.38
61+
```
62+
63+
This environment variable must be set before running CMake to configure the `cesium-native` project.
64+
65+
Alternatively, you can explicitly specify the toolset version in the vcpkg triplet file. To build with 14.38, edit the `extern/vcpkg-overlays/triplets/x64-windows-unreal.cmake` file in the `cesium-unreal` repo and add this line to the end of it:
5066

5167
```
5268
set(VCPKG_PLATFORM_TOOLSET_VERSION "14.38")
5369
```
5470

55-
Be careful not to commit this change!
71+
> [!warning]
72+
> Be careful not to commit this change if you edit the triplet file directly! Using the environment variable is safer.
5673
5774
vcpkg won't always automatically rebuild everything it needs to rebuild after making this change. To force a rebuild, delete the following:
5875

@@ -105,7 +122,8 @@ It should look like this (though your names and `visualStudio` properties may be
105122
"toolset": "host=x64,version=14.38"
106123
},
107124
"environmentVariables": {
108-
"VCToolsVersion": "14.38.33130"
125+
"VCToolsVersion": "14.38.33130",
126+
"VCPKG_PLATFORM_TOOLSET_VERSION": "14.38"
109127
}
110128
},
111129
{
@@ -119,7 +137,8 @@ It should look like this (though your names and `visualStudio` properties may be
119137
"toolset": "host=x64,version=14.44"
120138
},
121139
"environmentVariables": {
122-
"VCToolsVersion": "14.44.35207"
140+
"VCToolsVersion": "14.44.35207",
141+
"VCPKG_PLATFORM_TOOLSET_VERSION": "14.44"
123142
}
124143
},
125144
...

Source/CesiumEditor/CesiumEditor.Build.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,12 @@ public CesiumEditor(ReadOnlyTargetRules Target) : base(Target)
7575

7676
PublicAdditionalLibraries.AddRange(allLibs);
7777

78+
// On Linux, cpp-httplib uses getaddrinfo_a, which is in the anl library.
79+
if (Target.Platform == UnrealTargetPlatform.Linux)
80+
{
81+
PublicSystemLibraries.Add("anl");
82+
}
83+
7884
PublicDependencyModuleNames.AddRange(
7985
new string[]
8086
{

Source/CesiumEditor/Private/CesiumIonSession.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -117,10 +117,10 @@ void CesiumIonSession::connect() {
117117
}
118118

119119
if (!ionApiUrl) {
120-
promise.reject(std::runtime_error(fmt::format(
120+
promise.reject(std::runtime_error(
121121
"Failed to retrieve API URL from the config.json file at the "
122-
"specified Ion server URL: {}",
123-
ionServerUrl)));
122+
"specified Ion server URL: " +
123+
ionServerUrl));
124124
return promise.getFuture();
125125
}
126126

Source/CesiumRuntime/CesiumRuntime.Build.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,11 @@ public CesiumRuntime(ReadOnlyTargetRules Target) : base(Target)
7676
string[] allLibs = Directory.Exists(libPath) ? Directory.GetFiles(libPath, libSearchPattern) : new string[0];
7777

7878
PublicAdditionalLibraries.AddRange(allLibs);
79+
// On Linux, cpp-httplib uses getaddrinfo_a, which is in the anl library.
80+
if (Target.Platform == UnrealTargetPlatform.Linux)
81+
{
82+
PublicSystemLibraries.Add("anl");
83+
}
7984

8085
PublicDependencyModuleNames.AddRange(
8186
new string[]

0 commit comments

Comments
 (0)