CesiumGS / cesium-unreal

Bringing the 3D geospatial ecosystem to Unreal Engine
https://cesium.com/platform/cesium-for-unreal/
Apache License 2.0
885 stars 286 forks source link

Add compile support for Unreal Engine 5.4 #1393

Closed csciguy8 closed 2 months ago

csciguy8 commented 3 months ago

The Cesium for Unreal plugin needs to build successfully when using Unreal Engine 5.4.

(UE 5.4 currently available for download)

michael-muir commented 3 months ago

I have been attempting to compile a 5.4 version of the plugin for Windows using VS2022 and ran into issues with the UE 5.4 Preview 1 release. Other developers have also run into the same issues as reported below. The release is missing some of the UE5Rules and UE5ProgrammingRules libraries.

https://forums.unrealengine.com/t/ue-5-4-compile-error-catch2/1770453

My workaround it to download the latest code release for 5.4 from EpicGames/UnrealEngine github repository and building against it.

csciguy8 commented 3 months ago

I was able to get cesium-unreal-samples up and running with UE 5.4 Preview 1 on Windows.

You can build from this branch and follow the typical developer workflow to build cesium-native and the cesium-unreal plugin. In addition, I had to update my samples project build settings to at least V4, DefaultBuildSettings = BuildSettingsVersion.V4

Not ready for a pull request quite yet, but should get some users by until full support comes along.

image

csciguy8 commented 2 months ago

Also tested dropping the plugin directly into a fresh project (blueprints or C++). Seems to work just fine.

You can grab some of the built artifacts from here

wuwei416 commented 2 months ago

Also tested dropping the plugin directly into a fresh project (blueprints or C++). Seems to work just fine.

You can grab some of the built artifacts from here

Hi csciguy8, I download artifact of CesiumForUnreal-53-ue_5.4_support, and put it into [my UE5.4 directory]/Engine/Plugins/Marketplace, and then i run UE5.4 and i got an error, and UE5.4 exits. Can you give some advices on how to run cesium for unreal in UE5.4? 20240424-133119

vacuitydev commented 2 months ago

Hey @wuwei416. Is your project a C++ project? If so, you have to build and run it from the .sln file. If not, you should convert it to C++ (you can do it with unreal 5.3 by just adding a C++ class). Check here https://forums.unrealengine.com/t/how-can-i-convert-a-blueprint-project-to-c-project-in-ue5/526755 and here https://www.youtube.com/watch?v=8E0ZbBfNF2E

wuwei416 commented 2 months ago

Hey @wuwei416. Is your project a C++ project? If so, you have to build and run it from the .sln file. If not, you should convert it to C++ (you can do it with unreal 5.3 by just adding a C++ class). Check here https://forums.unrealengine.com/t/how-can-i-convert-a-blueprint-project-to-c-project-in-ue5/526755 and here https://www.youtube.com/watch?v=8E0ZbBfNF2E

Hi vacuitydev, Thank you for the reply. Now, I was able to get cesium-unreal-samples up and running with UE5.4 on Mac, but when i try to run the game in iOS or MacOS, i get crash, Can you give some advices on this error? Thanks! 截屏2024-04-24 16 31 39

wuwei416 commented 2 months ago

Hey @wuwei416. Is your project a C++ project? If so, you have to build and run it from the .sln file. If not, you should convert it to C++ (you can do it with unreal 5.3 by just adding a C++ class). Check here https://forums.unrealengine.com/t/how-can-i-convert-a-blueprint-project-to-c-project-in-ue5/526755 and here https://www.youtube.com/watch?v=8E0ZbBfNF2E

Hi vacuitydev, the steps are: 1.I put built artifact into UE5.4/Engine/Plugins/Marketplace

  1. create a blank UE5.4 project
  2. enable cesium for unreal plugin in UE5.4
  3. restart UE5.4, then I get this error 20240424-133119 Besides, i am working on MacOS
kring commented 2 months ago

@wuwei416 you need to put the plugin in your project's Plugins directory in this case, not in the Engine plugins directory. This is required because the plugin must be built for UE 5.4 (since it doesn't already include 5.4 binaries), and UE will not build a plugin in the Engine/Plugins directory.

wuwei416 commented 2 months ago

@wuwei416 you need to put the plugin in your project's Plugins directory in this case, not in the Engine plugins directory. This is required because the plugin must be built for UE 5.4 (since it doesn't already include 5.4 binaries), and UE will not build a plugin in the Engine/Plugins directory.

Hi Kring, Thanks for your information. I am a beginner in UE/cesium development, and I will tell you my operating steps. Can you help me check if they are correct? 1.download https://github.com/CesiumGS/cesium-unreal-samples from https://github.com/CesiumGS/cesium-unreal-samples, create dir Plugins in sample project root dir. 2.download cesium for unreal plugin package:CesiumForUnreal-53-ue_5.4_support 3.unzip CesiumForUnreal-53-ue_5.4_support and copy "CesiumForUnreal" to sample project Plugins directory 4.open CesiumForUnrealSamples.uproject by UnrealEditor5.4

csciguy8 commented 2 months ago

Hi @wuwei416, can we continue this thread on the forum? Either a new post or this related one.

(Btw, your steps look good to me. Also, if you're able to wait a bit, we are planning to release official 5.4 support soon)

wuwei416 commented 2 months ago

Hi @wuwei416, can we continue this thread on the forum? Either a new post or this related one.

(Btw, your steps look good to me. Also, if you're able to wait a bit, we are planning to release official 5.4 support soon)

Hi csciguy8, This is good to me. And can you please tell me the specific schedule, one month later,or two month later:)

csciguy8 commented 2 months ago

And can you please tell me the specific schedule, one month later,or two month later:)

@wuwei416 , how about now? :)

Support for UE 5.4 is now official... https://github.com/CesiumGS/cesium-unreal/releases/tag/v2.5.0

wuwei416 commented 2 months ago

And can you please tell me the specific schedule, one month later,or two month later:)

@wuwei416 , how about now? :)

Support for UE 5.4 is now official... https://github.com/CesiumGS/cesium-unreal/releases/tag/v2.5.0

Hi csciguy8, I am working on Unreal5.3.2 now, i am not sure when we will switch to Unreal5.4, anyway, thank you for the reply.