1. Download the Licensee repro, compile, and open:
https://udn.unrealengine.com/s/contentdocument/069QP00000CdN7WYAV
2. Press the first hatched button on the top bar, next to the Platforms dropdown. Its tooltip is "Execute First Plugin Action"
3. Select any static mesh, for example /Engine/Content/BasicShapes/Cube
4. Observe that the first CRC checksum printed in the log is different from the rest.
CRC Checksums of UStaticMesh Objects are non-deterministic. An uninitialized variable is written into them, resulting in successive checksum calls potentially resulting in different values.
This behavior comes from the function "UStaticMesh::Serialize(...)", and the code:
```
// TODO: These should be gated with a version check, but not able to be done in this stream.
FString Deprecated_HighResSourceMeshName;
uint32 Deprecated_HighResSourceMeshCRC;
Ar << Deprecated_HighResSourceMeshName;
Ar << Deprecated_HighResSourceMeshCRC;
```
The variable "Deprecated_HighResSourceMeshCRC" should be initialized, because it can write garbage, non-deterministic data into the archive.
Also found in UE5-Main, CL: 34719970
I am not able to find world outliner how to enable it?
Undefined sysmbol: typeinfo for AActor when cross-compile linux dedicated server on windows
Delay nodes occasionally don't fire the "Completed" output in a nativized build
How can i modify the param name in EQS node
What method is used to fill polygonal regions when drawing spline mesh at run time?
How to achieve HLSL Multiple Render Target in Material blueprints?
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-219367 in the post.
0 |
Component | UE - Foundation |
---|---|
Affects Versions | 5.4, 5.4.2 |
Target Fix | 5.5 |
Fix Commit | 34903378 |
---|
Created | Jul 15, 2024 |
---|---|
Resolved | Jul 18, 2024 |
Updated | Oct 28, 2024 |