Commit Graph

50 Commits

Author SHA1 Message Date
Andrew Davidson
3ddc3a4da3 Merge up from //UE5/Dev-LargeWorldCoordinates
#rb none

[CL 16211417 by Andrew Davidson in ue5-main branch]
2021-05-05 15:07:25 -04:00
halfdan ingvarsson
08e14a4f41 Fixed an edge case where if we're normalizing weights which are all equal, we end up in a situation where the error distribution makes the last entry have a slightly greater weight value than the previous, which invalidates the descending weight order invariant. If we detect this case, just reorder after normalization.
Fixed the Verify function so that we can see the current weight in the debugger.
Removed dead functions.

#jira none
#trivial
#rnx

[CL 16196332 by halfdan ingvarsson in ue5-main branch]
2021-05-04 13:48:59 -04:00
Marc Audy
0cbbc781ca Merge UE5/Release-Engine-Staging @ 15740152 to UE5/Main
This represents UE4/Main @ 15709114

[CL 15740605 by Marc Audy in ue5-main branch]
2021-03-18 15:20:03 -04:00
halfdan ingvarsson
70de324805 Templatized FBoneWeight into TBoneWeight that can sit on top of an arbitrary array-like container.
Register new SkinWeights mesh descriptor attribute that combines weights and influence in a single attribute, that proxies TBoneWeight to allow setting bone weights in one shot with normalization, culling, etc.
Deprecated and removed InfluenceBones and InfluenceWeights and updated the calling code to use the new attribute.

#jira UE-93689
#rb Alexis.Matte
#rnx

[CL 15516471 by halfdan ingvarsson in ue5-main branch]
2021-02-24 13:31:48 -04:00
Marc Audy
9753392e2b Merge UE5/RES CL# 15462083 to UE5/Main
This represents UE4/Main @ 15414221

[CL 15463811 by Marc Audy in ue5-main branch]
2021-02-18 18:13:28 -04:00
halfdan ingvarsson
7eda00912e Change FBoneWeight::MaxRawWeight to a constexpr function to satisfy Mac linkage issues.
#trivial
#rnx

[CL 15068830 by halfdan ingvarsson in ue5-main branch]
2021-01-13 13:14:44 -04:00
halfdan ingvarsson
ba7cf326cd Missing return value in the dummy TBoneWeights adapter.
#trivial
#rnx

[CL 15067904 by halfdan ingvarsson in ue5-main branch]
2021-01-13 12:24:44 -04:00
halfdan ingvarsson
940d1131b3 Templataize FBoneWeights so that it can be used on any dynamically sizeable container.
#rb none
#jira none
#rnx

[CL 15067624 by halfdan ingvarsson in ue5-main branch]
2021-01-13 11:54:11 -04:00
Lina Halper
963faf8b0d IKRig plugin first version
- you can add one type of solver - transform and then that will give you one goal and you can run it.
- 3 modules - IKRig, IKRigDeveloper, IKRigEditor
- IKRigDefinition is the main data for anim node.

#rb: Kiaran.Ritchie, Halfdan.Ingvarsson
#fyi: Kiaran.Ritchie

[CL 14814068 by Lina Halper in ue5-main branch]
2020-11-25 17:38:42 -04:00
halfdan ingvarsson
331db0f7b4 Fix duplicate check to be separate checks. Added a test for it.
#jira none
#rb none
#rnx

[CL 14145714 by halfdan ingvarsson in ue5-main branch]
2020-08-19 14:06:31 -04:00
halfdan ingvarsson
fc97705f40 Build fix for Linux -- lambda argument shadows member variable.
#jira none
#rb none
#rnx

[CL 14132771 by halfdan ingvarsson in ue5-main branch]
2020-08-18 11:44:42 -04:00
halfdan ingvarsson
f09be305a8 New container to store per-vertex bone weights. Takes care of normalization, blending, capping weight counts, etc. while being lightweight and fast.
#jira UE-93689
#rb Alexis.Matte

[CL 14132466 by halfdan ingvarsson in ue5-main branch]
2020-08-18 11:16:00 -04:00
halfdan ingvarsson
8da0b15ed9 Remove unused function and nix dependency on Engine.
#jira none
#rb Lina.Halper
#rnx

[CL 13800643 by halfdan ingvarsson in ue5-main branch]
2020-06-30 17:10:13 -04:00
braeden shosa
05f5f01853 Animation: Pose search experimental plugin
- This is a plugin that enables the animation runtime to search within a sequence for a given pose
- UPoseSearchSchema: specifies list of bones to sample, will include other info in the future like which properties to sample
- UPoseSearchIndexConfig: anim asset metadata object that specifies sample rate and range
- UPoseSearchIndex: anim asset metadata object containing data sampled from sequence offline, currently just translations per bone in the schema
- FPoseSearchPoseHistory: maintains a buffer of recorded poses over time for constructing search queries with past poses
- PoseSearchBuildIndex(): Constructs a search index for an anim sequence
- PoseSearchBuildQuery(): Constructs a search query given the current pose and a pose search schema
- PoseSearch(): Searches for the nearest matching pose in an indexed sequence given a query that was built for the same pose search schema
- FAnimNode_PoseMatchingSequencePlayer: Subclass of sequence player that adds the option to offset playback based on a pose search
- FAnimNode_PoseSearchHistoryCollector: a new pose history anim node for explicit control of pose search query context
  - Pose history is now updated during graph evaluation instead of always using the final pose result at the end of evaluation
  - Removed pose history from anim instance to decouple plugin from anim runtime
- Removed dependencies on USkeletalMeshComponent
- Promoted anim update shared context to base context so ancestor tracking can be used during node initialization
- Added FBoneIndexBase::IsValid()
- Exported UAnimationAsset API so plugins can use it
- Improved documentation
- Register asset type actions on module startup

#rb Andrew.Marre, Laurent.Delayen, Jaren.Peterson, Thomas.Sarkanen

[CL 13682386 by braeden shosa in ue5-main branch]
2020-06-16 02:32:29 -04:00
Lina Halper
44c1bb3292 COPY from //Dev-Anim to //Dev-Main
#rb: none
#fyi: Laurent.Delayen, Thomas.Sarkanen

[CL 11088765 by Lina Halper in Main branch]
2020-01-22 17:58:55 -05:00
ryan durand
0f0464a30e Updating copyright for Engine Runtime.
#rnx
#rb none


#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870549 by ryan durand in Main branch]
2019-12-26 14:45:42 -05:00
Marc Audy
8df336162c Copying //UE4/Dev-Anim to Dev-Main (//UE4/Dev-Main) @ 8782600
#rb
#rnx

[CL 8783278 by Marc Audy in Main branch]
2019-09-17 19:12:19 -04:00
Helge Mathee
4633735def RigVM - Rename/move file(s) - introduced new RigVM module
#rb none

[CL 7736102 by Helge Mathee in Dev-Anim branch]
2019-08-05 08:41:10 -04:00
Helge Mathee
d9e263ccc8 Fix build break on OSX.
#rb none

[CL 7734935 by Helge Mathee in Dev-Anim branch]
2019-08-05 08:06:30 -04:00
Helge Mathee
2a8033db59 Multiplex: VM data structure starts to work - basic instructions implemented + unit tests
#fyi lina.halper
#rb none

[CL 7709785 by Helge Mathee in Dev-Anim branch]
2019-08-02 15:53:52 -04:00
Helge Mathee
dfe2eb2595 Multiplex: Support for struct alignment and copy assignment + unit tests
#rb none

[CL 7707749 by Helge Mathee in Dev-Anim branch]
2019-08-02 12:36:11 -04:00
Helge Mathee
7ca1aabae6 Multiplex: Support for strings and names + unit tests
#rb none

[CL 7706998 by Helge Mathee in Dev-Anim branch]
2019-08-02 11:23:59 -04:00
Helge Mathee
c106b2e75e Multiplex: Added functionality for proper struct initialization and destruction within the storage
#rb none

[CL 7706412 by Helge Mathee in Dev-Anim branch]
2019-08-02 10:24:32 -04:00
Helge Mathee
3d552fa44c Multiplex ByteCode data structure, table iterator + unit test
#rb none

[CL 7697641 by Helge Mathee in Dev-Anim branch]
2019-08-01 16:20:18 -04:00
Helge Mathee
c8afe65ac8 Multiplex ByteCode data structure + unit tests. This is the baseline byte code management data structure for the multiplex vm.
#fyi lina.halper
#rb none

[CL 7695335 by Helge Mathee in Dev-Anim branch]
2019-08-01 15:31:12 -04:00