- Adds an option to not merge skeletal mesh sections sharing the same material during FBX import. This allows you to control visibility at a per-section level without having to give each section a unique material. [Github Pull Request: 9587]
#jira UE-164863
#rb Alexis.Matte, JeanLuc.Corenthin
[CL 26757306 by Brice Criswell in ue5-main branch]
EditorTestActorSelection.cpp: spawns an empty actor, selects it, and then verifies the selection set.
EditorTestHierarchicalISMSelection.cpp: finds a pre-existing actor in the test map, selects the ISM component of that actor, then verifies the selection set.
BP_BadPerfSelectingISM.uasset: test actor used in EditorTestHierarchicalISMSelection.cpp
HierarchicalISMSelectionTestMap.umap: test map used in both EditorTestHierarchicalISMSelection.cpp and EditorTestActorSelection.cpp
#jira UE-189267
#review @logan.buchy
[CL 26477955 by han chu in ue5-main branch]
Added a new anim node: AnimNext Parameters. This injects parameters into the AnimNext stack for all leafwards nodes.
Added a new way of binding to parameters on anim nodes.
- Added indirection to UAnimGraphNode_Base to allow different 'binding types' to be authored by deriving from UAnimGraphNodeBinding
- Added new binding type for AnimNext parameters
- Moved existing binding code (inc UI widget creation) into UAnimGraphNodeBinding_Base
- Binding types can be selected on a per-node or per-anim BP basis
Reworked FParamStack API a little
- Allow for better error checking when pushing/popping stack layers. Pushed layers can now only be subsequently popped by passing in the handle of the pushed layer.
- Standalone layers are now wrapped in an opaque handle rather than returning a unique ptr
- GetParamData APIs now perform more involved type checking, allowing derived object types & type conversions to be implemented
Improved parameter type sandboxing for automated tests. If running low-level type tests while execution was happening on another thread, the editor could crash because of invalidating already-existing types.
Lots of other small fixes to get workflows nicer and end-to-end functionality working
#rb Nicholas.Frechette,Jaime.Cifuentes,Jurre.deBaare
[CL 26455905 by thomas sarkanen in ue5-main branch]
In a test map, spawn an actor, then select it, and then check to see if the spawned actor is selected.
#jira UE-189271
#rb
[CL 26245129 by han chu in ue5-main branch]
#rb trivial
#jira UE-185415
#rnx
#preflight 647449472e05bcc33088c3c5
- On internal CIS mac machines these tests were sometimes failing, but this was never seen on local machines.
- Ran many tests, with very verbose logging added and the conclusion was that the file events were being found but some times they arrived too late and the test had already "timed out" or the file cache watcher has interpreted the results incorrectly because not all of the important events had arrived.
- Increasing the time out seems to work. This is not a good fix but reworking both the watcher code, the file cache code and the tests is out of scope at the moment.
[CL 25672016 by paul chipchase in ue5-main branch]
Fix a crash in some asset editors when you force deleted an asset with pending changes and hit "cancel" on the save dialog
#jira UE-107248
#preflight 64517c880e33f2d51d6e3adb
[CL 25321878 by aditya ravichandran in ue5-main branch]
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]
Use Automation.LogBPTestMetadata CVar to enable the behavior
#jira UE-175266
#preflight 63e15f061020773a3f113f5b
#rb Chris.Constantinescu
[CL 24177156 by Jerome Delattre in ue5-main branch]
Nonetheless wait until all assets have finished compiling before completing the test so that we can monitor total cold time
#rnx
#jira UE-171782
#rb Francis.Hurteau
#preflight 638b4d1f303395f6c9fc3131
[CL 23423876 by danny couture in ue5-main branch]
The main change is that FSoftSkinVertex, used by FSkeletalMeshLODModel, in now stores weights as 16-bit after conversion from the import data. This increases the size of each FSoftSkinVertex from 144 bytes to 160 bytes (about 10% increase). By default render meshes still use 8-bit skin weights, with weights downshifted from the 16-bit modeling data, so no change in GPU memory consumption there. However, the vertex buffer will automatically return a 16-bit skin weights when requested from the GPU side (e.g. for CPU skinning and viewing tangents).
This change in the model data and vertex buffer CPU-side query, resulted in many changes throughout the codebase and will have an effect on licensees who are actively reading from and writing to these two storage locations.
The GPU skin cache shader has had one more permutation added when not using unlimited skin weights. The vertex factory is not affected.
#jira UE-164386
#rb alexis.matte, josie.yang
#preflight 632c0c5ab4515b7e22b4804d
[CL 22215219 by halfdan ingvarsson in ue5-main branch]