Nativization Bug: Add Unique Transform fails nativization

Reproduction:

New Project

I used Third Person Template

Opened ThirdPersonCharacter added the following Blueprints:

Create an array of Transforms.

Get Actor Transform → Add Unique

Package product with Nativization. Will get the following error:

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: c:\program files\epic games\ue_4.15\engine\source\runtime\core\public\Containers/Array.h(821): error C2678: binary ‘==’: no operator found which takes a left-hand operand of type ‘const FTransform’ (or there is no acceptable conversion)

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\Program Files\Epic Games\UE_4.15\Engine\Source\Runtime\Engine\Classes\Sound/DialogueWave.h(75): note: could be ‘bool operator ==(const FDialogueContextMapping &,const FDialogueContextMapping &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\Program Files\Epic Games\UE_4.15\Engine\Source\Runtime\Engine\Classes\Sound/DialogueTypes.h(61): note: or ‘bool operator ==(const FDialogueContext &,const FDialogueContext &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\Program Files\Epic Games\UE_4.15\Engine\Source\Runtime\Engine\Classes\Engine/SkeletalMesh.h(585): note: or ‘bool operator ==(const UMaterialInterface &,const FSkeletalMaterial &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\Program Files\Epic Games\UE_4.15\Engine\Source\Runtime\Engine\Classes\Engine/SkeletalMesh.h(584): note: or ‘bool operator ==(const FSkeletalMaterial &,const UMaterialInterface &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\Program Files\Epic Games\UE_4.15\Engine\Source\Runtime\Engine\Classes\Engine/SkeletalMesh.h(583): note: or ‘bool operator ==(const FSkeletalMaterial &,const FSkeletalMaterial &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\Program Files\Epic Games\UE_4.15\Engine\Source\Runtime\Engine\Classes\Engine/StaticMesh.h(347): note: or ‘bool operator ==(const UMaterialInterface &,const FStaticMaterial &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\Program Files\Epic Games\UE_4.15\Engine\Source\Runtime\Engine\Classes\Engine/StaticMesh.h(346): note: or ‘bool operator ==(const FStaticMaterial &,const UMaterialInterface &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\Program Files\Epic Games\UE_4.15\Engine\Source\Runtime\Engine\Classes\Engine/StaticMesh.h(345): note: or ‘bool operator ==(const FStaticMaterial &,const FStaticMaterial &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\Program Files\Epic Games\UE_4.15\Engine\Source\Runtime\Engine\Classes\Engine/StaticMesh.h(229): note: or ‘bool operator ==(const FMeshSectionInfo &,const FMeshSectionInfo &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\Program Files\Epic Games\UE_4.15\Engine\Source\Runtime\Engine\Classes\EdGraph/EdGraphPin.h(76): note: or ‘bool operator ==(const FEdGraphTerminalType &,const FEdGraphTerminalType &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: c:\program files\epic games\ue_4.15\engine\source\runtime\rhi\public\RHIResources.h(264): note: or ‘bool operator ==(const FRHIUniformBufferLayout &,const FRHIUniformBufferLayout &)’

UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: c:\program files\epic games\ue_4.15\engine\source\runtime\core\public\Containers/Array.h(821): note: while trying to match the argument list ‘(const FTransform, const FTransform)’

  1. screenshot here:

  1. Inclusive

Hello Vincere,

I was unable to reproduce your issue on our end. I have a couple of questions that will help me narrow down the issue you are experiencing.

  1. Could you provide a screenshot of the scripting set-up for this issue?
  2. What method of Nativization are you using to package your build?

Thanks!

I was still unable to reproduce your error. For me to investigate further I would need to see your project directly. You can message me privately on the forums here:

https://forums.unrealengine.com/member.php?680446-ThomasVanZeeland

Message Sent

Hello Vincere,

Your issue does appear to be by design. Unreal does not have a default comparison for transform variables, and this causes the package to fail upon nativization. Your project will pack if nativization is turned off for that specific blueprint, which you can do by setting you nativization method to exclusive and not adding it to the nativize list. I have submitted a feature request for your issue on your behalf which you can view here:

You can track the report’s status as the issue is reviewed by our development staff. Please be aware that this issue may not be prioritized or fixed soon.

Thanks for the help!