Unreal Engine 4.24 Released!

Hello UE team,
I love the all things you are made. But in somehow I feel the new UE4.24 kind slower than before!

Great job man!

Oh yes, I completely forgot I did it, now it work, thanks! :stuck_out_tongue:

Hiiiiiiiii!!!

Hopefully, somebody can help me with this as for the life of me I can’t figure out what it could be :rolleyes:

So I’m updating my Email Plugin for releasing the 4.24 version on the marketplace and it builds fine and I can package for Windows no problem. When I try to package for android I get this:

C:/NVPACK/android-ndk-r14b/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/gcc/aarch64-linux-android/4.9.x/…/…/…/…/aarch64-linux-android/bin\ld: cannot find C:/Users/symon/Desktop/EmailPluginDev/Plugins/EmailPlugin/Source/ThirdParty/lib/Android/arm64-v8a: Permission denied
clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)

Now obviously the plugin links to a static library which works fine for 4.21 to 4.23 but in 4.24 it seems to have some issues with getting permission to access the folder in which the android static library lives. I tried looking into the following:

  • Making sure the AndroidWorks doesn’t need to be updated
  • Build for various SDK versions (no luck)
  • Checking read-only permissions on all the plugins subfolders and files

4.24 also prompts you with these messages while building:
[Upgrade] Using backward-compatible build settings. The latest version of UE4 sets the following values by default, which may require code changes:
[Upgrade] bLegacyPublicIncludePaths = false => Omits subfolders from public include paths to reduce compiler command line length. (Previously: true).
[Upgrade] ShadowVariableWarningLevel = WarningLevel.Error => Treats shadowed variable warnings as errors. (Previously: WarningLevel.Warning).
[Upgrade] PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs => Set in build.cs files to enables IWYU-style PCH model. See IWYU | Unreal Engine Documentation. (Previously: PCHUsageMode.UseSharedPCHs).
[Upgrade] Suppress this message by setting ‘DefaultBuildSettings = BuildSettingsVersion.V2;’ in EmailPluginDev.Target.cs, and explicitly overriding settings that differ from the new defaults.

And I already tried to see if any of the above makes a difference and no luck yet.

Does anyone have any idea what this could be?

Same messages here, after creating a new blank C++ template in 4.24 and trying to compile it.

I don’t want to suppress this message. Instead, I would like to upgrade and use the new build settings.

So, what are we supposed to do for migrating to Build Settings V2?

So the message itself isn’t an issue at all for me. It just lets you know that under the new BuildSettingsVersion those values aren’t set to their usual default values and are now set to different default values from previous versions.

As the message points out you can set DefaultBuildSettings inside your Project Target.cs file to BuildSettingsVersion.V2 and it will hide those messages. I could hide them successfully but it doesn’t solve my android packaging issue with linking a static library.

I’m not entirely sure but as far as I understand the new build settings are just those new default values or maybe I’m completely wrong :rolleyes:

Hi Everyone - Have just installed 4.24 - I cannot get the Megascans live link plugin to install - I’m getting the classic ‘could not be compiled / python’ error messages. Will the plugin be built in eventually now that Epic has Megascans?

I guess it may be that Quixel need to update Bridge in the next few days to be compatible with 4.24 - If anyone know how to get it to work in the meantime that would be great???

It seems that Landscape with layers does not return Physical Material from trace hit. I have a project in 4.23, and there landscape returns Physical Material appropriate to trace hit location. However, in 4.24 the trace hits Landscape and it is identified correctly, but the Physical Material is always None.

This version is cursed. Why am I seeing this? VS2017, happens only in Shipping config.


G:/myue/Engine/Source/Programs/SlateViewer/Private/SlateViewerApp.cpp(60): error C3861: SummonPerfTestSuite: identifikátor se nenasel
G:/myue/Engine/Source/Programs/SlateViewer/Private/SlateViewerApp.cpp(65): error C3861: RestoreSlateTestSuite: identifikátor se nenasel
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(210): error C2504: FStatsReadFile: Není definovaná základní (base) trída
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(211): error C2059: chyba syntaxe: <
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(211): error C2238: neocekávané tokeny pred: ;
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(236): error C2065: FStatMessage: nedeklarovany identifikátor
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(236): error C2923: TArray: FStatMessage není platny argument typu sablona pro parametr InElementType.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(236): error C3668: FNewStatsReader::ReadStatsFrame: Metoda se specifikátorem prepsání override neprepsala zádné metody base class.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(279): error C3668: FNewStatsReader::PreProcessStats: Metoda se specifikátorem prepsání override neprepsala zádné metody base class.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(227): error C2614: FNewStatsReader: Neplatná inicializace clenu: FStatsReadFile není základní (base) trída ani clen.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(232): error C3861: SetHistoryFrames: identifikátor se nenasel
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(250): error C2065: FRawStatStackNode: nedeklarovany identifikátor
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(250): error C2146: Chyba syntaxe: Chybí ; pred identifikátorem Stack.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(250): error C2065: Stack: nedeklarovany identifikátor
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(251): error C2065: FStatMessage: nedeklarovany identifikátor
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(251): error C2923: TArray: FStatMessage není platny argument typu sablona pro parametr InElementType.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(251): error C2133: NonFrameStats: neznámá velikost
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(251): error C2512: TArray: Není dostupny zádny odpovídající konstruktor default.
G:\myue\Engine\Source\Runtime\Core\Public\Containers/Array.h(279): note: viz deklarace: TArray
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(252): error C2065: State: nedeklarovany identifikátor
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(252): error C2065: Stack: nedeklarovany identifikátor
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(254): error C2039: GenerateCycleGraphs: Není clenem FServiceConnection.
g:\myue\engine\source\developer\profilerclient\private\ProfilerClientManager.h(28): note: viz deklarace: FServiceConnection
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(254): error C2065: Stack: nedeklarovany identifikátor
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(255): error C2039: GenerateAccumulators: Není clenem FServiceConnection.
g:\myue\engine\source\developer\profilerclient\private\ProfilerClientManager.h(28): note: viz deklarace: FServiceConnection
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(295): error C2275: FStatsReader: neplatné pouzití tohoto typu jako vyrazu
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(211): note: viz deklarace: FStatsReader
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(295): error C2039: Create: Není clenem `global namespace'.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(295): error C3861: Create: identifikátor se nenasel
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(299): error C2039: ReadAndProcessAsynchronously: Není clenem FNewStatsReader.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(209): note: viz deklarace: FNewStatsReader
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(446): error C2039: RequestStop: Není clenem FNewStatsReader.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(209): note: viz deklarace: FNewStatsReader
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(448): error C2039: IsBusy: Není clenem FNewStatsReader.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(209): note: viz deklarace: FNewStatsReader
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(451): error C2039: GetProcessingStageAsString: Není clenem FNewStatsReader.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(209): note: viz deklarace: FNewStatsReader
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(451): error C2039: GetStageProgress: Není clenem FNewStatsReader.
G:/myue/Engine/Source/Developer/ProfilerClient/Private/ProfilerClientManager.cpp(209): note: viz deklarace: FNewStatsReader

Would be good for this version to note on the release notes, that there are multiple Paper2D optimizations and fixes.
Would be good to have that there, so people would know that this is the version they should be getting.

Did the engine space requirements change? When trying to install a launcher build it says 65.47GB is required which is double the size of 4.23.
Edit: after restarting the launcher and trying again it seems to work better.

Yes, they need to update too.

I tried and double checked if I got all setup right, even re-downloaded the demo with 4.24 selected . There are some errors and even still being able to run the Demo, the destruction is not happening and several code assertions are being triggered, looking at the comments where the assertions happened, there are still design attempts and not implemented functionality, so overall, wait for them to release an update regarding Chaos on 4.24 and still use 4.23 for the time being.

I have installed 4.24, created a new Architectural project, with raytracing enabled by default, and it simply crashes before opening. You too?

Build 4.24 with Chaos gives errors

Error C2789 ‘FaceIdx’: an object of const-qualified type must be initialized UE4 D:\UnrealEngine\GitBuild\4.24.0\Engine\Source\Runtime\PhysicsSQ\Public\SQVerifier.h 286

Error C2664 ‘uint32 FindFaceIndex(const FHitLocation &,const FVector &)’: cannot convert argument 1 from ‘ChaosInterface::FSweepHit’ to ‘const FHitLocation &’ UE4 D:\UnrealEngine\GitBuild\4.24.0\Engine\Source\Runtime\PhysicsSQ\Public\SQVerifier.h 286

Ok, so we can no longer create/edit VR input mappings in blueprints using Add Mapping node because VR keys are no longer accessable in BP due to new SteamVR Input method :. Will we get it back in future or is it gone for good?

In project from 4.20 reimport of static meshes (Datasmith ONLY!) failed every time in 4.24. Plugins section - all that have any connection to datasmith is enabled. But seems that everything that is already imported into the scene from 4.20 can’t be changed and should be imported and tweaked from scratch. Standart fbx. model are ok, reimport works fine. Any ideas how to fix it?

Worked fine for me with raytracing enabled, using NVidia drivers 441.41 from 11/26th/2019 and GTX1080, giving around 38+FPS realtime in play mode (showing a sequencer).

PS: there is a new driver release 441.66 which I didn’t installed yet.

Same there, can’t compile engine with Chaos enabled.


1>--------------------Project: Default-------------------------------------------
1>** For UE4Editor-Win64-Development **
1>Module.Engine.10_of_45.cpp (13:01.51 at +0:00)
1>E:\UE_4.23\UnrealEngine-4.24.0-release\Engine\Source\Runtime\PhysicsSQ\Public\SQVerifier.h(286): error C2664: 'uint32 FindFaceIndex(const FHitLocation &,const FVector &)': cannot convert argument 1 from 'ChaosInterface::FSweepHit' to 'const FHitLocation &'
1>E:\UE_4.23\UnrealEngine-4.24.0-release\Engine\Source\Runtime\PhysicsSQ\Public\SQVerifier.h(286): note: Reason: cannot convert from 'ChaosInterface::FSweepHit' to 'const FHitLocation'
1>E:\UE_4.23\UnrealEngine-4.24.0-release\Engine\Source\Runtime\PhysicsSQ\Public\SQVerifier.h(286): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
1>E:\UE_4.23\UnrealEngine-4.24.0-release\Engine\Source\Runtime\PhysicsCore\Public\PhysicsInterfaceUtilsCore.h(170): note: see declaration of 'FindFaceIndex'
1>E:\UE_4.23\UnrealEngine-4.24.0-release\Engine\Source\Runtime\PhysicsSQ\Public\SQVerifier.h(286): error C2789: 'FaceIdx': an object of const-qualified type must be initialized
1>E:\UE_4.23\UnrealEngine-4.24.0-release\Engine\Source\Runtime\PhysicsSQ\Public\SQVerifier.h(286): note: see declaration of 'FaceIdx'
1>
1>Error executing E:\UE_4.23\UnrealEngine-4.24.0-release\Engine\Build\Windows\cl-filter\cl-filter.exe (tool returned code: 2)
1>Module.GeometryCollectionEngine.cpp (14:23.42 at +0:00)
1>E:/UE_4.23/UnrealEngine-4.24.0-release/Engine/Source/Runtime/Experimental/GeometryCollectionEngine/Private/GeometryCollection/GeometryCollectionComponent.cpp(1948): error C2440: 'initializing': cannot convert from 'FPhysScene *' to 'Chaos::FPhysScene_ChaosInterface *'
1>E:/UE_4.23/UnrealEngine-4.24.0-release/Engine/Source/Runtime/Experimental/GeometryCollectionEngine/Private/GeometryCollection/GeometryCollectionComponent.cpp(1948): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>E:/UE_4.23/UnrealEngine-4.24.0-release/Engine/Source/Runtime/Experimental/GeometryCollectionEngine/Private/GeometryCollection/GeometryCollectionComponent.cpp(1949): error C2027: use of undefined type 'Chaos::FPhysScene_ChaosInterface'
1>E:\UE_4.23\UnrealEngine-4.24.0-release\Engine\Source\Runtime\Experimental\ChaosSolvers\Public\PBDRigidsSolver.h(64): note: see declaration of 'Chaos::FPhysScene_ChaosInterface'
1>E:/UE_4.23/UnrealEngine-4.24.0-release/Engine/Source/Runtime/Experimental/GeometryCollectionEngine/Private/GeometryCollection/GeometryCollectionComponent.cpp(1952): error C2039: 'GetScene': is not a member of 'FPhysScene_PhysX'
1>E:\UE_4.23\UnrealEngine-4.24.0-release\Engine\Source\Runtime\Engine\Public\Physics/PhysicsInterfaceUtils.h(11): note: see declaration of 'FPhysScene_PhysX'
1>
1>Error executing E:\UE_4.23\UnrealEngine-4.24.0-release\Engine\Build\Windows\cl-filter\cl-filter.exe (tool returned code: 2)
1>---------------------- Done ----------------------
1>
1>    Rebuild All: 0 succeeded, 1 failed, 0 skipped
1>
1>1 build system warning(s):
1>   - Temporary license has expired
1>
1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.MakeFile.Targets(44,5): error MSB3075: The command "..\..\Build\BatchFiles\Build.bat -Target="UE4Editor Win64 Development" -Target="ShaderCompileWorker Win64 Development -Quiet" -WaitMutex -FromMsBuild" exited with code 5. Please verify that you have sufficient rights to run this command.
1>Done building project "UE4.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 2 up-to-date, 0 skipped ==========

Very nice set of features and improvements, thank you!

Is there a way to author the hair in Blender? It has some grooming tools, but if I’m not mistaken, no alembic export…?
Also, is it suitable for stylized hair strands, to simulate hair physics of simple mesh-based stylized hair like these?