Commit Graph

544 Commits

Author SHA1 Message Date
nick brett
053fcb090f [UE][FIX] cyclic module dependency introduced with CL-19283727
- Revert change to AnimGraph.Build.cs
- Introduce new abstract interface for Physics Assert Render functions called from the AnimGraph module

[REVIEW] [at]Thomas.Sarkanen

#ROBOMERGE-OWNER: marc.audy
#ROBOMERGE-AUTHOR: nick.brett
#ROBOMERGE-SOURCE: CL 19336821 via CL 19337203 via CL 19337471 via CL 19337507
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19348771 by nick brett in ue5-main branch]
2022-03-10 22:29:02 -05:00
frederick lupien
2be85d3154 Made LinkedAnimLayers node purple to distinguish them from LinkedAnimGraph
[REVIEW] [at]Thomas.Sarkanen
#tests anim blueprint editor

#ROBOMERGE-AUTHOR: frederick.lupien
#ROBOMERGE-SOURCE: CL 19284487 via CL 19295534 via CL 19304957 via CL 19305399
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19347138 by frederick lupien in ue5-main branch]
2022-03-10 21:02:48 -05:00
nick brett
7e1eab27e2 [UE][Feature] RBAN Better Debug Draw - 2nd attempt
- Added Debug Visualization of physics bodies and constraints for RBAN nodes in AnimBP editor
- Added checkboxes to filter debug Visualization to Phat skeleton tree
- Created a new PhysicsAssetRenderSettings class that incorporates the debug rendering and filtering settings from Phat
- Created a new PhysicsAssetRenderUtilities namespace that incorporates the debug rendering and filtering code from Phat
- Synchronize debug visualization of physics bodies and constraints between Phat and AnimBP editors

oringinaly submitted as cl-19242421 but failed on non-unity build so backed out

#rb [at]Chris.Caulfield, [at]Thomas.Sarkanen, [at]Cedric.Caillaud
#preflight 6221e57d335298c3145112d1

#ROBOMERGE-OWNER: nick.brett
#ROBOMERGE-AUTHOR: nick.brett
#ROBOMERGE-SOURCE: CL 19283727 via CL 19295417 via CL 19304854 via CL 19304870
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19347122 by nick brett in ue5-main branch]
2022-03-10 21:02:14 -05:00
thomas sarkanen
e1151831f9 Fixed tagged-property-serialization causing warnings with generated sparse class data structs in animation blueprints
This changes the generated property names for object properties to ensure that object properties of differing class types dont collide. This avoids the warning in FObjectPropertyBase::CheckValidObject (Serialized Class X for a property of Class Y. Reference will be nullptred.).

#jira UE-144970
#jira FORT-455566
#preflight 62262d20b97fb949cf4bea13
#rb Jurre.deBaare
#lockdown simon.tourangeau

#p4v-cherrypick 19251391

#ROBOMERGE-AUTHOR: thomas.sarkanen
#ROBOMERGE-SOURCE: CL 19285792 in //UE5/Release-5.0/... via CL 19286676
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v924-19243027)

[CL 19291659 by thomas sarkanen in ue5-main branch]
2022-03-07 15:54:51 -05:00
leon huang
0193ffe8d3 Fix for CIS warnings for localization duplicate keys. Fixes simply involve changing one of the colliding localization keys.
#rnx
	#rb: Vincent.Gauthier
	#jira: UE-143620
	#preflight: 6222489d2f7d78332e121416
	#lockdown Mitchell.Wilson

#ROBOMERGE-AUTHOR: leon.huang
#ROBOMERGE-SOURCE: CL 19272838 in //UE5/Release-5.0/... via CL 19273134
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v924-19243027)

[CL 19275063 by leon huang in ue5-main branch]
2022-03-04 16:10:23 -05:00
frederick lupien
a6fdf1d576 Allow linked animation graphs to be set to a null anim blueprint class both in the animation blueprint editor and at runtime when using UAnimInstance::LinkAnimGraphByTag
[REVIEW] Thomas.Sarkanen
#tests BP Compiler + various linked anim layers cases

#ROBOMERGE-AUTHOR: frederick.lupien
#ROBOMERGE-SOURCE: CL 19173813 via CL 19173848 via CL 19173864 via CL 19174435
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19174691 by frederick lupien in ue5-main branch]
2022-02-28 11:25:34 -05:00
benoit gadreau
5bac2b1cb2 fixed crash when validating nodes: template anim BPs don't have any skeleton assigned
#rb thomas.sarkanen
[FYI] kiaran.ritchie
#jira UE-142972
#preflight 6214d1cc9e2201e21406a740
#lockdown tbd

#ROBOMERGE-AUTHOR: benoit.gadreau
#ROBOMERGE-SOURCE: CL 19071009 in //UE5/Release-5.0/... via CL 19090369
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19134147 by benoit gadreau in ue5-main branch]
2022-02-24 19:44:00 -05:00
jamie dale
cfdad64946 Added context to PostCDOCompiled and also call it for skeleton-only compiles
#jira
#preflight 6210112553204823ae8bcf4f
#rb Michael.Noland

#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 19058032 via CL 19058041 via CL 19058078 via CL 19058094 via CL 19059619
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v918-19018356)

[CL 19066317 by jamie dale in ue5-main branch]
2022-02-21 02:04:58 -05:00
nick brett
977a29d03a [UE][FIX] AnimDynamics UI - Ensure bone name updates correctly in details panel array element headers.
#rb [at]Thomas.Sarkanen
[FYI] [at]Charles.Anderson
#preflight 620a74e817632e948459d2a7
#rmx

#ROBOMERGE-AUTHOR: nick.brett
#ROBOMERGE-SOURCE: CL 18994598 via CL 18994608 via CL 18994616 via CL 18994855 via CL 18994946
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)

[CL 18997965 by nick brett in ue5-main branch]
2022-02-15 12:07:16 -05:00
thomas sarkanen
a5948bb075 Fixed nested structs that are bound to anim node pins not showing their child values
#rb Jurre.deBaare

#ROBOMERGE-AUTHOR: thomas.sarkanen
#ROBOMERGE-SOURCE: CL 18918369 via CL 18918381 via CL 18918386 via CL 18922642 via CL 18923567
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v916-18915374)

[CL 18923672 by thomas sarkanen in ue5-main branch]
2022-02-09 15:28:13 -05:00
nick brett
6d3811e933 [UE][FIX] Bug fixes for Anim Dynamics UI
- Removed cached USkeletalMeshComponent* from AnimGraphNode as we can now get it from AnimGraphNode_Base
- Add a templatized version of AnimGraphNode_Base::GetDebuggedAnimNode() that allows retrival of derived node types
- Can now calculate chain bones without waiting for the node to be compiled - removed associated warning from UI
- Prevent Copy+Paste of bone names in chain bone array, improving workflow
- Ensure that changing bound bone name does not reset physics body parameters, improving workflow
- Improve chain body UI

[REVIEW] [at]Thomas.Sarkanen
[FYI] [at]Charles.Anderson

#ROBOMERGE-OWNER: nick.brett
#ROBOMERGE-AUTHOR: nick.brett
#ROBOMERGE-SOURCE: CL 18903371 via CL 18903392 via CL 18903410 via CL 18915322 via CL 18915359
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v915-18905420)

[CL 18915362 by nick brett in ue5-main branch]
2022-02-09 05:02:00 -05:00
helge mathee
645e1c7469 Control Rig: Support modifybone to work without a preview mesh
#rb sara.schvartzman
#jira UE-141661
#preflight https://horde.devtools.epicgames.com/job/62027c51bf1c496911476ca7
#lockdown juan.canada

#ROBOMERGE-AUTHOR: helge.mathee
#ROBOMERGE-SOURCE: CL 18902011 in //UE5/Release-5.0/... via CL 18902196 via CL 18902397
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v912-18901109)

[CL 18902410 by helge mathee in ue5-main branch]
2022-02-08 10:30:46 -05:00
jose villarroel
3f650197bf Fix "additional meshes" in persona preview not animating
#rb Aaron.Cox, Jurre.DeBaare
#preflight 61fd7b9fe65336d14550704c

#ROBOMERGE-AUTHOR: jose.villarroel
#ROBOMERGE-SOURCE: CL 18872694 via CL 18872736 via CL 18872771 via CL 18875005 via CL 18875491
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18875508 by jose villarroel in ue5-main branch]
2022-02-04 17:43:49 -05:00
dave jones2
ed1b4ed6a5 UE-140327 - Remove ENABLE_BLUEPRINT_REAL_NUMBERS usage
The original ENABLE_BLUEPRINT_REAL_NUMBERS macro was strictly meant for AB testing in the Dev-LWC. Currently, disabling it won't work, and would likely lead to broken behavior. Its presence might incorrectly indicate to licensees that this is an option that can be toggled safely.

#rb marc.audy
#jira UE-140327
#preflight 61fc6449dc0b3ecbecb6f381
#lockdown julien.marchand

#ROBOMERGE-AUTHOR: dave.jones2
#ROBOMERGE-SOURCE: CL 18864654 in //UE5/Release-5.0/... via CL 18864683 via CL 18864993
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18865002 by dave jones2 in ue5-main branch]
2022-02-04 11:54:52 -05:00
thomas sarkanen
ff1e91c927 Fix issues with child anim BP compilation ordering & sparse class data fixup
This partially ports a fix from CL 18740288, but improves on when and how sparse class data gets fixed up.
This allows this fix to cover more parent->child load/compile orderings (the previous fix only worked if they were all compiled in the same batch, which isnt always guaranteed.

Original CL desc:

Ensures that cleaned-up sparse class data structs are moved out of the package they are in, thus not requiring a GC step to ensure that batch compilation works correctly.
Without this, it is possible for the NewObject call in FAnimBlueprintCompilerContext::RecreateSparseClassData to attempt to re-use (as it has a fixed name) the currently-existing (but not referenced) object rather than creating a new one.
This also reverts some other changes that were made to try to address related issues.

#jira FORT-444463
#jira UE-140565
#jira UE-140530
#lockdown laurent.delayen
#rb jurre.debaare
#preflight 61fbddc53b22793ca35ebfc0

#ROBOMERGE-AUTHOR: thomas.sarkanen
#ROBOMERGE-SOURCE: CL 18843087 in //UE5/Release-5.0/... via CL 18843109 via CL 18843285
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18843294 by thomas sarkanen in ue5-main branch]
2022-02-03 10:36:00 -05:00
nick brett
b33f552b57 [UE][FIX] Static analysis warning on missing null check
#jira UE-140660
#rmx
#rb [at]Thomas.Sarkanen
#preflight 61fa66e61d7ca8ed2d76906e

#ROBOMERGE-AUTHOR: nick.brett
#ROBOMERGE-SOURCE: CL 18825263 via CL 18825278 via CL 18825306 via CL 18835789 via CL 18836335
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18836421 by nick brett in ue5-main branch]
2022-02-02 18:24:37 -05:00
jurre debaare
92fa622bf6 Variable watch within state machines is broken
- Ensure that any folded AnimNode property gets remapped correctly for pin-to-property map in FBlueprintDebugData
- Ensure  pin value watching for folded properties retrieves the correct value
- Const-ifying some code paths around blueprint pin watching
#jira UE-139995
#preflight 61fa624ddb42673a60239ce1
#rb Thomas.Sarkanen
#lockdown Cristina.Riveron

#ROBOMERGE-AUTHOR: jurre.debaare
#ROBOMERGE-SOURCE: CL 18824229 in //UE5/Release-5.0/... via CL 18825883 via CL 18826298
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18826349 by jurre debaare in ue5-main branch]
2022-02-02 09:54:14 -05:00
dave jones2
c8574d3b74 Merging //UE5/Dev-LargeWorldCoordinates [at] 18802167 to //UE5/Release-5.0
Blueprint real number support.

This change deprecates the use the of "float" and "double" types in Blueprints in favor of a new "real". By default, "real" is back by a double precision floating point number. However, it can be single precision if the number is a native float property or function parameter. This distinction won't be visible to the Blueprint user: in both instances, they'll be represented by "real" pin types. During deserialization, we'll automatically convert Blueprint pin types to use real/doubles, unless they're used to represent native code (including delegate signatures).

One consequence of this change is that we need to perform implicit casts between single and double precision real numbers. During Blueprint compilation, the compiler will detect points in the graph for when either a widening or narrowing conversion needs to occur. Subsequently, the script bytecode will contain a new cast instruction that performs the conversion. This also works on container types, but each entry in the container will have to be converted. This can introduce unwanted overhead for large containers that are frequently passed between Blueprint and native code.

The scope of this change affects Blueprints used by Gameplay, Animation, Control Rig, and UMG.

#rb marc.audy (serialization changes)
#jira UE-116484
#preflight 61f8bdd5a2514ba12ff7bdfc

#ROBOMERGE-AUTHOR: dave.jones2
#ROBOMERGE-SOURCE: CL 18809077 in //UE5/Release-5.0/... via CL 18809455 via CL 18822548
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18823569 by dave jones2 in ue5-main branch]
2022-02-02 05:50:50 -05:00
lucas dower
27ea093828 Fix autowire for non-pose pins on anim nodes
#jira UE-140058
#rb thomas.sarkanen
#preflight 61f7dd8541414fb013c2e14c

[CL 18788618 by lucas dower in ue5-main branch]
2022-01-31 08:27:58 -05:00
jose villarroel
9746cc9977 [Backout] - CL18751910
[FYI] Thomas.Sarkanen
Original CL Desc
-----------------------------------------------------------------
Fix asserts/warnings around child anim BPs

Ensures that cleaned-up sparse class data structs are moved out of the package they are in, thus not requiring a GC step to ensure that batch compilation works correctly.
Without this, it is possible for the NewObject call in FAnimBlueprintCompilerContext::RecreateSparseClassData to attempt to re-use (as it has a fixed name) the currently-existing (but not referenced) object rather than creating a new one.
This also reverts some other changes that were made to try to address related issues.

#jira FORT-444463
#rb Phillip.Kavan
#preflight 61f18be3f8088a3d298e6419
#p4v-cherrypick 18740288

#ROBOMERGE-AUTHOR: jose.villarroel
#ROBOMERGE-SOURCE: CL 18773105 in //UE5/Release-5.0/... via CL 18773189 via CL 18773693
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18773704 by jose villarroel in ue5-main branch]
2022-01-28 12:39:05 -05:00
andrew davidson
cfa7a3090e Merge fix for missing expliict cast.
#preflight none

#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 18754410 in //UE5/Release-Engine-Staging/... via CL 18757426
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18758422 by andrew davidson in ue5-main branch]
2022-01-27 14:34:22 -05:00
koray hagen
45ef78af92 Anim node Function/Blueprint Function in-use deletion warnings and expanded Find References implementation
#jira none
#rb aaron.cox,thomas.sarkanen
#preflight 61f24626e12e3fcf9b330ce5

#ROBOMERGE-AUTHOR: koray.hagen
#ROBOMERGE-SOURCE: CL 18753993 in //UE5/Release-5.0/... via CL 18754008 via CL 18757009
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18757328 by koray hagen in ue5-main branch]
2022-01-27 14:11:31 -05:00
lucas dower
9a50e490bd Support for disabling pose watching on specific anim nodes
#jira UE-139373
#rb thomas.sarkanen
#preflight 61f2add8c0033b39f8bb1997

[CL 18753518 by lucas dower in ue5-main branch]
2022-01-27 10:11:25 -05:00
thomas sarkanen
8f861ede89 Fix asserts/warnings around child anim BPs
Ensures that cleaned-up sparse class data structs are moved out of the package they are in, thus not requiring a GC step to ensure that batch compilation works correctly.
Without this, it is possible for the NewObject call in FAnimBlueprintCompilerContext::RecreateSparseClassData to attempt to re-use (as it has a fixed name) the currently-existing (but not referenced) object rather than creating a new one.
This also reverts some other changes that were made to try to address related issues.

#rb Phillip.Kavan
#preflight 61f18be3f8088a3d298e6419

#ROBOMERGE-AUTHOR: thomas.sarkanen
#ROBOMERGE-SOURCE: CL 18740288 via CL 18740350 via CL 18740373 via CL 18742029 via CL 18742887
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18743237 by thomas sarkanen in ue5-main branch]
2022-01-26 15:37:52 -05:00
nick brett
01e66fcf2b [FIX] Attempt to fix build error on UnrealEditor NonUnity Win64 (Strict, VS2019) by adding missing include.
#rmx

#ROBOMERGE-AUTHOR: nick.brett
#ROBOMERGE-SOURCE: CL 18721437 via CL 18721476 via CL 18721480 via CL 18724677 via CL 18725105
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18725125 by nick brett in ue5-main branch]
2022-01-25 13:02:31 -05:00