154 Commits

Author SHA1 Message Date
henrik karlsson
562dc45ab9 [Engine]
* Moved dllexport from type to methods/staticvar in all Engine runtime code. This improves compile times, memory and performance in dll builds

[CL 26082288 by henrik karlsson in 5.3 branch]
2023-06-17 18:14:12 -04:00
danny chapman
0e5c4849f3 Build fix - make some functions inline so they can be used elsewhere
#rb trivial
#preflight 647a01e3e75a2263919b0dc5

[CL 25764895 by danny chapman in ue5-main branch]
2023-06-02 12:32:07 -04:00
jose villarroel
bfd65f960c Added twist offset to LegIK node.
This allows animators inject knee motion either manually or with procedural controls within the graph.
[REVIEW] [at]Aaron.Cox, [at]Thomas.Sarkanen
#preflight 6474508d8137a37b85494382

[CL 25683102 by jose villarroel in ue5-main branch]
2023-05-30 14:35:39 -04:00
dan oconnor
0a97a12d8b Mark FSimSpaceSettings as POD, it has a constructor but can be copied with memcpy, this will result in STRUCT_IsPlainOldData being set, which will speed up working with UserDefinedStructs that aggregate this structure. This structure has been embedded heavily in some UserDefinedStruct (ex. RBANParamsStruct). Drawback to this change is that if we add NON-Pod data to this structure we will memcpy it.
#rb chris.caulfield
#jira
#rnx

[CL 25644740 by dan oconnor in ue5-main branch]
2023-05-26 12:11:11 -04:00
benjamin jillich
50ff8d4637 Small typo fixes
#preflight 64413668b91c13075807ce9d

[CL 25125893 by benjamin jillich in ue5-main branch]
2023-04-20 09:13:09 -04:00
Thomas Sarkanen
502797ca50 Animation Curve Runtime & Editor Improvements
Runtime notes:
- Removes 'smart name' usage across the animation systems.
- Changed curve blending from a uniform array (sized per skeleton) to a sparse array of sorted named values. Blends and other combiners are performed using a dual iteration 'tape merge'.
- Skeleton curves are no longer guaranteed to cover all curve names that can be found at runtime.

Editor notes:
- Curve metadata (flags, bone links etc.) is still present on the skeleton, but can also now exist on a skeletal mesh
- Curve metadata (for morph targets) is still populated on import
- Curves can now be used arbitrarily at runtime

New features:
- New Find/Replace dialog that allows for batch-replacing curves and notifies across all of a project's assets
- New curve debugger tab in various Persona editors that allows for viewing curve values live. This also now allows viewing curves for specific pose watches.
- Pose watches now output curve tracks to the Rewind Debugger

#rb Jurre.deBaare,Nicholas.Frechette,Sara.Schvartzman,Helge.Mathee,Kiaran.Ritchie,Jaime.Cifuentes,Martin.Wilson,Keith.Yerex,Andrean.Franc (and more!)
#jira UE-167776
#jira UE-173716
#jira UE-110407
#preflight 63fc98c81206d91a2bc3ab90
#preflight 63f3ad4f81646f1f24c240c2

[CL 24421496 by Thomas Sarkanen in ue5-main branch]
2023-02-27 07:20:58 -05:00
jaime cifuentes
a20a6e0027 Added validation and visual error functionality to AnimNode_SkeletalControlBase, which can be used to check referenced bones and show errors on the AnimGraph nodes that use them (so it is clear if the setup does not work due to a bone missing)
#rb thomas.sarkanen
#jira UE-160111
#preflight 63b85453c927e34482895de4

[CL 23599353 by jaime cifuentes in ue5-main branch]
2023-01-06 12:16:12 -05:00
Bryan sefcik
80f80e7a25 Updated the underlying types for regular and namespaced enums.
#jira
#preflight 638e6d479549ddaa2822be9a

[CL 23421568 by Bryan sefcik in ue5-main branch]
2022-12-06 19:43:59 -05:00
henrik karlsson
fa90b399a4 Added includes for future change. This changelist only contains added #include and a couple of empty placeholder files
Tested compiling fortnite, unrealeditor, lyra, qagame with non-unity/pch

#preflight 63635997876630122adeab9f
#rb none

[CL 22958990 by henrik karlsson in ue5-main branch]
2022-11-03 14:18:47 -04:00
henrik karlsson
b5b86c796c This change is a strategical submit for a coming change that removes lots of includes in headers that are included by many files. This change contains adding of includes in files that previously got those includes transitively from other inclkudes
#preflight 6355d4940313c24974b2107b
#rb none

[CL 22783162 by henrik karlsson in ue5-main branch]
2022-10-26 12:57:32 -04:00
jaime cifuentes
39bb9b978b Truncation fixes for AnimationGraphRuntime module
#rb @thomas.sarkanen
#jira UE-166634
#preflight 63591a0a764df4711e65c76e

[CL 22776099 by jaime cifuentes in ue5-main branch]
2022-10-26 07:34:18 -04:00
Nicholas Frechette
a182dbd867 Wrap deprecated properties with WITH_EDITORONLY_DATA to avoid runtime waste
#jira UE-49197
#rb Thomas.Sarkanen, Helge.Mathee
#preflight 6358002a66733d70593afa3f

[CL 22751839 by Nicholas Frechette in ue5-main branch]
2022-10-25 11:42:04 -04:00
jaime cifuentes
3dd74bd523 Truncation fixes for AnimationGraph and AnimationGraphRuntime module. Part of UE-166634 and UE-166633
#rb @tomas.sarkanen
#jira UE-166634 UE-166633
#preflight 635695410313c24974d9babc

[CL 22725844 by jaime cifuentes in ue5-main branch]
2022-10-24 09:48:39 -04:00
thomas sarkanen
08851ed7a0 Fixed crashes caused by re-instancing clobbering the size of EditFixedSize arrays in anim nodes
Also patched up some other instances of anim nodes where this could occur

#jira UE-166235
#preflight 634406087045f13c96aafa70
#rb Jurre.deBaare

[CL 22431499 by thomas sarkanen in ue5-main branch]
2022-10-10 12:14:03 -04:00
marc audy
813f596809 [FortniteGame]
This is a huge change with the focus on improving compile times. It SHOULDN'T have any behavior changes since it is "only" splitting up large files in multiple smaller files and forward declare lots of types. This change is based on compile score results.

Highlights
* Moved lots and lots of types out of FortTypes.h and in to their own files to be able to avoid including FortTypes.h
* Removed FortTypes.h includes from lots of files
* Identified critical paths for includes and cut them off using forward declares or moving types out of big files
* Lots of adding of includes to be able to handle a large UE change that cut off dependencies in lots of engine files (will be submitted separately

Also fixed a bunch of linux non-monolithic build errors just to be able to verify that these changes worked

Reviewed in spirit by Marc Audy :-)

#rb none
#preflight 634350bcc272487ed4323f00

[CL 22427442 by marc audy in ue5-main branch]
2022-10-10 07:08:34 -04:00
halfdan ingvarsson
1581de59be After five years, it's probably time to remove the 'experimental' flag from the Constraint anim node.
#rnx

[CL 22068476 by halfdan ingvarsson in ue5-main branch]
2022-09-17 22:06:58 -04:00
Bryan sefcik
b4a6e947d8 Ran IWYU on Public headers under Engine/Source/Runtime/...
Headers are updated to contain any missing #includes needed to compile and #includes are sorted.  Nothing is removed.

#ushell-cherrypick of 21065896 by bryan.sefcik
#preflight 62d4b1a5a6141b6adfb0c892
#jira

#ROBOMERGE-OWNER: Bryan.sefcik
#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21150156 via CL 21151754 via CL 21154719
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)
#ROBOMERGE-CONFLICT from-shelf

[CL 21181076 by Bryan sefcik in ue5-main branch]
2022-07-20 11:31:36 -04:00
Marc Audy
5b28f37a7c Follow up to CL# 21088391
Remove properties and functions so that redirectors can do their job
Add redirector for function paramter
#preflight
#codereview jaime.cifuentes, thomas.sarkanen, john.vanderburg

[CL 21140261 by Marc Audy in ue5-main branch]
2022-07-17 12:55:54 -04:00
jaime cifuentes
2c16e8a3b3 Uninitialized vars fix
#jira UE-159400
#review @thomas.sarkanen
#preflight 62d03b8cdc4397d384059f9f

[CL 21091809 by jaime cifuentes in ue5-main branch]
2022-07-14 12:05:04 -04:00
jaime cifuentes
7fabb99aaf Inclusive Terminology Push - Part of UE-158645, UE-158525, UE-158532
Renamed / deprecated master/slave terms at SkinnedMeshComponent and SkeletalMeshComponent (plus all the users)

#jira UE-158645, UE-158525, UE-158532
#review @thomas.sarkanen @john.vanderburg
#preflight 62ced88af324cee189e48d43
#tests Verified the properties transfer correctly after modifying them without the fix and loading the character with the component with the fix applied
#preflight 62cfc490c36afd11ef07c9ab

[CL 21088391 by jaime cifuentes in ue5-main branch]
2022-07-14 03:55:26 -04:00
jaime cifuentes
86c8b3ddab AnimNode_Rigidbody MasterAlpha rename. Part of UE-158645
Adding the old property as deprecated, so the c++ continues compiling for external users of the engine

#jira UE-158645
#review @thomas.sarkanen
#fyi @benn.gallagher
#preflight 62cd75d33f422700272a0e11

[CL 21055821 by jaime cifuentes in ue5-main branch]
2022-07-12 10:03:15 -04:00
jaime cifuentes
7f89f01ffa AnimNode_Rigidbody MasterAlpha rename. Part of UE-158645
#jira UE-158645
#review @thomas.sarkanen @benn.gallagher
#preflight 62cc4bcabc36fc75cc5d6d72

[CL 21054114 by jaime cifuentes in ue5-main branch]
2022-07-12 05:30:52 -04:00
thomas sarkanen
58c99c971c Fixed various issues with the revised re-instancing code path for anim BPs
Fixed RBAN not re-initialzing correctly on re-instancing - added a special case to reinit the simulation.
Made reinstancing handler virtual so users can add their own fallbacks in the future.
Fixed dynamic AnimGraphLayers not (un)linking correctly after live-recompile, as it was trying to link against the old (replaced) animation instance

#rb Jurre.deBaare
#preflight 628cf1dec97e4beea3a2f541

#ROBOMERGE-AUTHOR: thomas.sarkanen
#ROBOMERGE-SOURCE: CL 20349883 via CL 20349893 via CL 20349912
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20352477 by thomas sarkanen in ue5-main branch]
2022-05-24 14:26:39 -04:00
nick brett
63417968d2 [UE][FEATURE] RBAN Access to cloth colliders
- Rigid Body Animation Nodes can now add kinematic objects at runtime to represent any Cloth Colliders defined in a parent skeleton. This can be used to improve the behavior of  RBAN alternatives to cloth simulation (often used at lower LODs).
- There is a new Checkbox (called Use External Cloth Collision) on the RBAN node preferences panel to enable this feature .

[REVIEW] [at]Chris.Caulfield, [at]Kriss.Gossart
[FYI] [at]Charles.Anderson
#preflight 62419a0e4271438b073c931a

#ROBOMERGE-AUTHOR: nick.brett
#ROBOMERGE-SOURCE: CL 19525550 via CL 19525561 via CL 19525566
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v937-19513599)

[CL 19532620 by nick brett in ue5-main branch]
2022-03-28 16:24:16 -04:00
evgenii babinets
45d1b35de8 Added a flag on RigidBody AnimNode to allow it to use synchronous physics simulation. Renamed the CVar to reflect that it's the project default, not an override.
#rb andrew.ladenberger
[FYI] randall.hess, dae.han, harry.boltz

#ROBOMERGE-AUTHOR: evgenii.babinets
#ROBOMERGE-SOURCE: CL 19482937 via CL 19484049 via CL 19486673 via CL 19496583 via CL 19497072
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v936-19480137)

[CL 19498475 by evgenii babinets in ue5-main branch]
2022-03-24 13:29:40 -04:00